Rosetta
|
#include <MotifGraftMover.hh>
Public Member Functions | |
MotifGraftMover () | |
MotifGraftMover Creator. More... | |
void | init_parameters (std::string const &s_contextStructure, std::string const &s_motif, core::Real const &r_RMSD_tolerance, core::Real const &r_NC_points_RMSD_tolerance, core::Real const &gp_r_clash_atom_scale, core::Size const &i_clash_score_cutoff, core::Size const &i_min_fragment_size, std::string const &s_combinatory_fragment_size_delta, std::string const &s_max_fragment_replacement_size_delta, std::string const &s_clash_test_residue, std::string const &s_hotspots, bool &b_full_motif_bb_alignment, bool const &b_allow_independent_alignment_per_fragment, bool const &b_graft_only_hotspots_by_sidechain_replacement, bool const &b_only_allow_if_N_point_match_aa_identity, bool const &b_only_allow_if_C_point_match_aa_identity, bool const &b_revert_graft_to_native_sequence, bool const &b_allow_repeat_same_graft_output, bool const &b_reinit_every_apply, core::Real const &r_output_cluster_tolerance, filters::FilterCOP const &f_output_filter) |
MotifGraftMover parameters and options initializer. More... | |
~MotifGraftMover () override | |
MotifGraftMover Destructor. More... | |
void | apply (Pose &) override |
Apply mover function. More... | |
core::pose::PoseOP | get_additional_output () override |
Iterate over the results to get additional matches in the queue. More... | |
protocols::moves::MoverOP | clone () const override |
Function used by roseta to create clones of movers. More... | |
bool | get_next_output (core::pose::Pose &work_pose) |
Header only mover get_name. More... | |
bool | get_next_nonredundant_motifmatch (MotifMatch &match, numeric::HomogeneousTransform< core::Real > &match_xform) |
Used during output to discard redundant results. More... | |
void | permutate_n_vv_of_pairs (utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > const &vv_of_pairs, utility::vector1< std::pair< core::Size, core::Size > > &buff_combVec, core::Size start_index, utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > &vv_resulting_permutations) |
As the name suggests in generates all the permutations of a vector of vectors of pairs (Alex: we should templatize this! Maybe alrready there?) More... | |
void | generate_combinations_of_motif_fragments_by_delta_variation (core::pose::PoseOP const &p_motif_, utility::vector1< std::pair< long int, long int > > const &combinatory_fragment_size_delta, core::Size min_fragment_size, utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > &vv_resulting_permutations) |
Generate all the combination of different legths of the motif fragment as requested in combinatory_fragment_size_delta Uses permutate_n_vv_of_pairs to generate the permutations. More... | |
void | parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &) override |
Fuction to parse RosettaScripts XML options. More... | |
std::priority_queue< MotifMatch > | generate_scaffold_matches (core::pose::Pose &target_scaffold, core::pose::PoseOP &target_motif_, core::pose::PoseOP &target_contextStructure_) |
Identify all potential matches for the given target scaffold (this is where the motif grafting code is called) More... | |
void | generate_match_pose (core::pose::Pose &target_pose, core::pose::Pose const &contextStructure, bool b_revert_graft_to_native_sequence, MotifMatch motif_match) |
Generate pose corresponding to the given match. More... | |
void | get_matching_fragments (core::pose::Pose const &target_scaffold, core::pose::PoseOP const &target_motif_, core::pose::PoseOP const &target_contextStructure_, core::Real const &RMSD_tol, core::Real const &NC_points_RMSD_tol, core::Real const &clash_atom_scale, core::Size const &clash_cutoff, core::Size const &min_fragment_size, std::string const &clash_test_residue, utility::vector1< std::pair< long int, long int > > const &max_fragment_replacement_size_delta_, utility::vector1< std::pair< core::Size, core::Size > > const &combinatory_fragment_size_delta, utility::vector1< utility::vector1< core::Size > > const &vvr_hotspots, bool const &b_full_motif_bb_alignment, bool const &b_allow_independent_alignment_per_fragment, bool const &b_graft_only_hotspots_by_sidechain_replacement, bool const &b_only_allow_if_N_point_match_aa_identity, bool const &b_only_allow_if_C_point_match_aa_identity, std::priority_queue< MotifMatch > &pq) |
Return a priority queue with the sucessful epigrafts. More... | |
void | test_epigraft_and_contextStructure_clashes (core::pose::Pose const &p_scaffold, core::pose::Pose const &p_motif_, core::pose::Pose const &p_contextStructure_, core::Size const &clash_cutoff, utility::vector1< motif2scaffold_data > &v_m2s_data, numeric::geometry::hashing::MinimalClashHash const &context_clash_hash, core::Real clash_atom_scale) |
Functions that takes the scaffold, motif, contextStructure and superposition transform data. Deletes from the supperposition data those transformations that can't pass the clash score. More... | |
core::Size | count_clashes_between_two_poses (core::pose::Pose const &p_A, core::pose::Pose const &p_B, core::Size clash_cutoff, core::Real clash_atom_scale) |
Count the Number of Clashes between two poses. More... | |
core::pose::Pose | get_rotated_and_translated_pose (core::pose::Pose const &p_scaffold, numeric::xyzMatrix< core::Real > const &RotM, numeric::xyzVector< core::Real > const &TvecA, numeric::xyzVector< core::Real > const &TvecB) |
Function that returns by reference a rotated copy of the pose. More... | |
core::pose::Pose | join_two_poses_by_jump (core::pose::Pose const &p_A, core::pose::Pose const &p_B) |
returns a pose with two input poses merged (with a jump in-between) and with the PDB info corrected More... | |
core::Real | get_clash_score_from_pose (core::pose::Pose &p_input, core::scoring::ScoreFunctionOP const &scorefxn_) |
Helper function to stich (epigraft) two poses given a set of indices in pose A and B stored in a motif2scaffold_data structure. More... | |
core::pose::Pose | stich_motif_in_scaffold_by_indexes_rotation_and_translation (core::pose::Pose const &p_scaffold, core::pose::Pose const &p_motif_, motif2scaffold_data &m2s_dat, bool const &skip_motif_extremes) |
Helper function to stich (epigraft) two poses given a set of indices in pose A and B stored in a motif2scaffold_data structure. More... | |
core::Real | get_bb_alignment_and_transformation (core::pose::Pose const &poseA, utility::vector1< core::Size > const &positions_to_alignA, core::pose::Pose const &poseB, utility::vector1< core::Size > const &positions_to_alignB, numeric::xyzMatrix< core::Real > &RotM, numeric::xyzVector< core::Real > &TvecA, numeric::xyzVector< core::Real > &TvecB) |
Performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses. More... | |
core::Real | get_bb_alignment_and_transformation_wTipsExtraInfo (utility::vector1< bool > const &v_isNorC, core::pose::Pose const &poseA, utility::vector1< core::Size > const &positions_to_alignA, core::pose::Pose const &poseB, utility::vector1< core::Size > const &positions_to_alignB, numeric::xyzMatrix< core::Real > &RotM, numeric::xyzVector< core::Real > &TvecA, numeric::xyzVector< core::Real > &TvecB, utility::vector1< core::Real > &RMSD_tip_elements) |
Performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses. More... | |
core::Real | get_bb_distance (core::pose::Pose const &poseA, utility::vector1< core::Size > const &positions_to_alignA, core::pose::Pose const &poseB, utility::vector1< core::Size > const &positions_to_alignB) |
Returns the BB distance of two poses respect to indexes. More... | |
void | superposition_transform (core::Size natoms, ObjexxFCL::FArray1_double const &weights, ObjexxFCL::FArray2_double &ref_coords, ObjexxFCL::FArray2_double &coords, numeric::xyzMatrix< core::Real > &RotM, numeric::xyzVector< core::Real > &TvecA, numeric::xyzVector< core::Real > &TvecB) |
Helper Fortran wrapper to get the aligment of two matrixes as well as the corresponding transform. More... | |
void | get_motif_scaffold_superposition_and_RMSD (core::pose::Pose const &p_scaffold, core::pose::PoseOP const &p_motif_, core::Real const &RMSD_tol, core::Real const &tip_RMSD_tol, utility::vector1< utility::vector1< core::Size > > const &vvr_hotspots, bool const &b_full_motif_bb_alignment, bool const &b_allow_independent_alignment_per_fragment, bool const &b_graft_only_hotspots_by_sidechain_replacement, utility::vector1< motif2scaffold_data > &v_m2s_data) |
performs soperposition based on the motif and returns fragments within the RMSD_tol and also returns the Rotation and translation superposition information in the first [1] vector of each fragment More... | |
core::pose::Pose | get_mono_aa_pose_copy (core::pose::Pose const &p_input, std::string const &aminoacid_code) |
returns a copy of the pose that replaces all the aminoacids for a single selected aminoacid More... | |
bool | get_fragments_by_CA_distances_and_NCpoints_restrains (core::pose::Pose const &p_scaffold, core::pose::PoseOP const &p_motif_, utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > &vv_scaffold_fragments_indexes, utility::vector1< std::pair< core::Size, core::Size > > &v_motif_fragments_indexes, core::Real const &RMSD_tol, utility::vector1< std::pair< long int, long int > > const &max_fragment_replacement_size_delta, utility::vector1< std::pair< core::Size, core::Size > > const &v_motif_fragments_permutation, bool const &b_only_allow_if_N_point_match_aa_identity, bool const &b_only_allow_if_C_point_match_aa_identity, bool const &b_N_point_can_replace_proline, bool const &b_C_point_can_replace_proline) |
returns by reference two vectors of indexes (vv_scaffold_fragments_indexes, v_motif_fragments_indexes) that hold the lower and upper bounds of the fragments. Indeed the corresponding to the scaffold one is a vector of vectors, since each pose_scaffold can have many matches More... | |
void | fragments_permutation_test_by_CA_distances (core::pose::Pose const &p_scaffold, core::pose::PoseOP const &p_motif_, utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > const &vv_scaffold_fragments_indexes, utility::vector1< std::pair< core::Size, core::Size > > const &v_motif_fragments_indexes, core::Real const &RMSD_tol, core::Size const &start_motif_num, utility::vector1< std::pair< core::Size, core::Size > > &buff_combVec, utility::vector1< motif2scaffold_data > &v_m2s_data) |
Generates all the discontinuous fragments combinations that are within the tol restriction. Reduce the combinations by matching intra chains distances by pairs. The method is/can be exahustive but fast (i.e. iteratively it test the restrains (tree unfolding) and skips to the next combination once one fails (branch removal) ). CAUTION, Uses self recursion, so use it wisely. More... | |
void | parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables (std::string const &s_contextStructure, std::string const &s_motif, core::Real const &r_RMSD_tolerance, core::Real const &r_NC_points_RMSD_tolerance, core::Real const &r_clash_atom_scale, core::Size const &i_clash_score_cutoff, core::Size const &i_min_fragment_size, std::string const &s_combinatory_fragment_size_delta, std::string const &s_max_fragment_replacement_size_delta, std::string const &s_clash_test_residue, std::string const &s_hotspots, bool &b_full_motif_bb_alignment, bool const &b_allow_independent_alignment_per_fragment, bool const &b_graft_only_hotspots_by_sidechain_replacement, bool const &b_only_allow_if_N_point_match_aa_identity, bool const &b_only_allow_if_C_point_match_aa_identity, bool const &b_revert_graft_to_native_sequence, bool const &b_allow_repeat_same_graft_output, bool const &b_reinit_every_apply, core::Real const &r_output_cluster_tolerance, filters::FilterCOP const &f_output_filter) |
Fuction to parse the class options and populate their corresponding variables to the global private space. More... | |
std::string | get_name () const override |
Each derived class must specify its name. The class name. More... | |
![]() | |
Mover () | |
virtual MoverOP | create () |
MoverCOP | get_self_ptr () const |
MoverOP | get_self_ptr () |
MoverCAP | get_self_weak_ptr () const |
MoverAP | get_self_weak_ptr () |
Mover (std::string const &type_name) | |
sets the type for a mover; name_ has been removed (2010/05/14) More... | |
virtual void | test_move (Pose &pose) |
: Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More... | |
virtual bool | reinitialize_for_each_job () const |
Inform the Job Distributor (August '08 vintage) whether this object needs to be freshly regenerated on each use. More... | |
virtual bool | reinitialize_for_new_input () const |
Inform the Job Distributor (August '08 vintage) whether this object needs to be regenerated when the input pose is about to change, (for example, if the Mover has special code on the first apply() that is only valid for that one input pose). More... | |
virtual MoverOP | fresh_instance () const |
Generates a new Mover object freshly created with the default ctor. More... | |
MoverStatus | get_last_move_status () const |
end parser interface, start Job Distributor interface///////////// More... | |
void | reset_status () |
resets status to SUCCESS, meant to be used before an apply(). The job distributor (august 08 vintage) uses this to ensure non-accumulation of status across apply()s. More... | |
void | set_type (std::string const &setting) |
Set the 'type' string. More... | |
std::string | get_type () const |
void | type (const std::string &type_in) |
Set the 'type' string. More... | |
std::string const & | type () const |
Get the set 'type' string. More... | |
virtual void | set_input_pose (PoseCOP pose) |
setter for poses contained for rms More... | |
virtual void | set_native_pose (PoseCOP pose) |
setter for native poses contained for rms -— we should get rid of this method? it is widely used, but a bit unsafe More... | |
PoseCOP | get_input_pose () const |
PoseCOP | get_native_pose () const |
void | set_current_job (protocols::jobdist::BasicJobCOP job) |
jobdist::BasicJobCOP | get_current_job () const |
virtual void | set_current_tag (std::string const &new_tag) |
std::string | get_current_tag () const |
A tag is a unique identifier used to identify structures produced by this Mover. get_current_tag() returns the tag, and set_current_tag( std::string tag ) sets the tag. This functionality is not intended for use with the 2008 job distributor. More... | |
virtual void | show (std::ostream &output=std::cout) const |
Outputs details about the Mover, including current settings. More... | |
virtual core::Real | last_proposal_density_ratio () |
virtual void | clear_info () |
Strings container can be used to return miscellaneous info (as std::string) from a mover, such as notes about the results of apply(). The job distributor (Apr 09 vintage) will check this function to see if your protocol wants to add string info to the Job that ran this mover. One way this can be useful is that later, a JobOutputter may include/append this info to an output file. More... | |
virtual Strings & | info () |
non-const accessor More... | |
virtual Strings const & | info () const |
const accessor More... | |
virtual void | provide_citation_info (basic::citation_manager::CitationCollectionList &) const |
Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More... | |
Static Public Member Functions | |
static std::string | mover_name () |
static void | provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd) |
![]() | |
static std::string | name () |
static void | register_options () |
Overload this static method if you access options within the mover. More... | |
Additional Inherited Members | |
![]() | |
typedef utility::tag::TagCOP | TagCOP |
typedef core::pose::Pose | Pose |
typedef core::pose::PoseCOP | PoseCOP |
typedef std::list< std::string > | Strings |
![]() | |
void | set_last_move_status (MoverStatus status) |
nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More... | |
protocols::motif_grafting::movers::MotifGraftMover::MotifGraftMover | ( | ) |
MotifGraftMover Creator.
References gp_b_is_first_run_.
|
overridedefault |
MotifGraftMover Destructor.
|
overridevirtual |
Apply mover function.
Implements protocols::moves::Mover.
References protocols::moves::FAIL_DO_NOT_RETRY, generate_scaffold_matches(), get_next_output(), gp_b_allow_repeat_same_graft_output_, gp_b_is_first_run_, gp_b_reinit_every_apply_, gp_p_contextStructure_, gp_p_motif_, gp_p_target_pose_, motif_match_results_, output_transforms_, protocols::moves::Mover::set_last_move_status(), and protocols::motif_grafting::movers::TR().
|
overridevirtual |
Function used by roseta to create clones of movers.
Reimplemented from protocols::moves::Mover.
core::Size protocols::motif_grafting::movers::MotifGraftMover::count_clashes_between_two_poses | ( | core::pose::Pose const & | p_A, |
core::pose::Pose const & | p_B, | ||
core::Size | clash_cutoff, | ||
core::Real | clash_atom_scale | ||
) |
Count the Number of Clashes between two poses.
References core::conformation::Residue::atom(), core::chemical::ResidueType::atom_type(), core::chemical::AtomType::element(), core::pose::Pose::residue(), core::pose::Pose::residue_type(), core::pose::Pose::size(), and core::conformation::Atom::xyz().
Referenced by test_epigraft_and_contextStructure_clashes().
void protocols::motif_grafting::movers::MotifGraftMover::fragments_permutation_test_by_CA_distances | ( | core::pose::Pose const & | p_scaffold, |
core::pose::PoseOP const & | p_motif_, | ||
utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > const & | vv_scaffold_fragments_indexes, | ||
utility::vector1< std::pair< core::Size, core::Size > > const & | v_motif_fragments_indexes, | ||
core::Real const & | RMSD_tol, | ||
core::Size const & | start_motif_num, | ||
utility::vector1< std::pair< core::Size, core::Size > > & | buff_combVec, | ||
utility::vector1< motif2scaffold_data > & | v_m2s_data | ||
) |
Generates all the discontinuous fragments combinations that are within the tol restriction. Reduce the combinations by matching intra chains distances by pairs. The method is/can be exahustive but fast (i.e. iteratively it test the restrains (tree unfolding) and skips to the next combination once one fails (branch removal) ). CAUTION, Uses self recursion, so use it wisely.
Generates all the discontinuous fragments combinations that are within the RMSD_tol restriction. Reduce the combinations by matching intra chains distances by pairs. The method is/can be exahustive but fast (i.e. iteratively it test the restrains (tree unfolding) and skips to the next combination once one fails (branch removal) ). CAUTION, Uses self recursion, so use it wisely.
References protocols::motif_grafting::movers::motif2scaffold_indexes::motifHigh, protocols::motif_grafting::movers::motif2scaffold_indexes::motifLow, core::pose::Pose::residue(), protocols::motif_grafting::movers::motif2scaffold_indexes::scaffoldHigh, protocols::motif_grafting::movers::motif2scaffold_indexes::scaffoldLow, protocols::motif_grafting::movers::TR(), protocols::motif_grafting::movers::motif2scaffold_data::v_indexes, and core::conformation::Residue::xyz().
Referenced by get_matching_fragments().
void protocols::motif_grafting::movers::MotifGraftMover::generate_combinations_of_motif_fragments_by_delta_variation | ( | core::pose::PoseOP const & | p_motif_, |
utility::vector1< std::pair< long int, long int > > const & | combinatory_fragment_size_delta, | ||
core::Size | min_fragment_size, | ||
utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > & | vv_resulting_permutations | ||
) |
Generate all the combination of different legths of the motif fragment as requested in combinatory_fragment_size_delta Uses permutate_n_vv_of_pairs to generate the permutations.
Generate all the combination of different legths of the motif fragment as requested in combinatory_fragment_size_delta.
References permutate_n_vv_of_pairs(), and protocols::motif_grafting::movers::TR().
Referenced by get_matching_fragments().
void protocols::motif_grafting::movers::MotifGraftMover::generate_match_pose | ( | core::pose::Pose & | target_pose, |
core::pose::Pose const & | contextStructure, | ||
bool | b_revert_graft_to_native_sequence, | ||
MotifMatch | motif_match | ||
) |
Generate pose corresponding to the given match.
Function used generate a match_pose epigraft using the results stored in the MotifMatch database.
References core::pose::Pose::aa(), protocols::motif_grafting::movers::MotifMatch::b_is_full_motif_bb_alignment(), protocols::motif_grafting::movers::MotifMatch::get_clash_score(), protocols::motif_grafting::movers::MotifMatch::get_full_motif_bb_alignment_mode(), protocols::motif_grafting::movers::MotifMatch::get_motif_fragments_RMSD(), protocols::motif_grafting::movers::MotifMatch::get_motif_ranges(), protocols::motif_grafting::movers::MotifMatch::get_RMSD(), protocols::motif_grafting::movers::MotifMatch::get_scaffold2motif_size_change(), protocols::motif_grafting::movers::MotifMatch::get_scaffold_fragment_data(), protocols::motif_grafting::movers::MotifMatch::get_scaffold_ranges(), gp_p_motif_, core::pose::initialize_disulfide_bonds(), join_two_poses_by_jump(), core::pose::Pose::pdb_info(), core::pose::Pose::replace_residue(), core::pose::Pose::residue(), core::pose::setPoseExtraScore(), core::pose::Pose::size(), stich_motif_in_scaffold_by_indexes_rotation_and_translation(), and protocols::motif_grafting::movers::TR().
Referenced by get_next_output().
std::priority_queue< MotifMatch > protocols::motif_grafting::movers::MotifGraftMover::generate_scaffold_matches | ( | core::pose::Pose & | target_scaffold, |
core::pose::PoseOP & | target_motif_, | ||
core::pose::PoseOP & | target_contextStructure_ | ||
) |
Identify all potential matches for the given target scaffold (this is where the motif grafting code is called)
References core::pose::Pose::conformation(), protocols::moves::FAIL_DO_NOT_RETRY, get_matching_fragments(), gp_b_allow_independent_alignment_per_fragment_, gp_b_full_motif_bb_alignment_, gp_b_graft_only_hotspots_by_sidechain_replacement_, gp_b_only_allow_if_C_point_match_aa_identity_, gp_b_only_allow_if_N_point_match_aa_identity_, gp_i_clash_score_cutoff_, gp_i_min_fragment_size_, gp_r_clash_atom_scale_, gp_r_NC_points_RMSD_tolerance_, gp_r_RMSD_tolerance_, gp_s_clash_test_residue_, gp_vp_combinatory_fragment_size_delta_, gp_vp_max_fragment_replacement_size_delta_, gp_vvr_hotspots_, core::chemical::LOWER_TERMINUS_VARIANT, core::conformation::Conformation::num_chains(), core::pose::Pose::pdb_info(), core::pose::remove_variant_type_from_pose_residue(), protocols::moves::Mover::set_last_move_status(), core::pose::Pose::size(), protocols::motif_grafting::movers::TR(), and core::chemical::UPPER_TERMINUS_VARIANT.
Referenced by apply().
|
overridevirtual |
Iterate over the results to get additional matches in the queue.
Reimplemented from protocols::moves::Mover.
References get_next_output(), gp_p_target_pose_, motif_match_results_, protocols::moves::MS_SUCCESS, protocols::moves::Mover::set_last_move_status(), and protocols::motif_grafting::movers::TR().
core::Real protocols::motif_grafting::movers::MotifGraftMover::get_bb_alignment_and_transformation | ( | core::pose::Pose const & | poseA, |
utility::vector1< core::Size > const & | positions_to_alignA, | ||
core::pose::Pose const & | poseB, | ||
utility::vector1< core::Size > const & | positions_to_alignB, | ||
numeric::xyzMatrix< core::Real > & | RotM, | ||
numeric::xyzVector< core::Real > & | TvecA, | ||
numeric::xyzVector< core::Real > & | TvecB | ||
) |
Performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses.
Function that performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses.
References core::pose::Pose::residue(), protocols::cluster::calibur::RMSD(), superposition_transform(), and core::conformation::Residue::xyz().
Referenced by stich_motif_in_scaffold_by_indexes_rotation_and_translation().
core::Real protocols::motif_grafting::movers::MotifGraftMover::get_bb_alignment_and_transformation_wTipsExtraInfo | ( | utility::vector1< bool > const & | v_isNorC, |
core::pose::Pose const & | poseA, | ||
utility::vector1< core::Size > const & | positions_to_alignA, | ||
core::pose::Pose const & | poseB, | ||
utility::vector1< core::Size > const & | positions_to_alignB, | ||
numeric::xyzMatrix< core::Real > & | RotM, | ||
numeric::xyzVector< core::Real > & | TvecA, | ||
numeric::xyzVector< core::Real > & | TvecB, | ||
utility::vector1< core::Real > & | RMSD_tip_elements | ||
) |
Performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses.
Function that performs alignment of the protein BB on the selected aminoacids. Returns the RMSD, Returns by reference the rotation Matrix and Translation Vector, Will fail if both poses are not protein <-This can be fixed by adding a list of the atoms to align to the function, but I am not doing it now. Will fail if the number of residues to align is not the same in the two poses.
References core::pose::Pose::residue(), protocols::cluster::calibur::RMSD(), superposition_transform(), and core::conformation::Residue::xyz().
Referenced by get_motif_scaffold_superposition_and_RMSD().
core::Real protocols::motif_grafting::movers::MotifGraftMover::get_bb_distance | ( | core::pose::Pose const & | poseA, |
utility::vector1< core::Size > const & | positions_to_alignA, | ||
core::pose::Pose const & | poseB, | ||
utility::vector1< core::Size > const & | positions_to_alignB | ||
) |
Returns the BB distance of two poses respect to indexes.
References core::pose::Pose::residue(), protocols::cluster::calibur::RMSD(), and core::conformation::Residue::xyz().
Referenced by stich_motif_in_scaffold_by_indexes_rotation_and_translation().
core::Real protocols::motif_grafting::movers::MotifGraftMover::get_clash_score_from_pose | ( | core::pose::Pose & | p_input, |
core::scoring::ScoreFunctionOP const & | scorefxn_ | ||
) |
Helper function to stich (epigraft) two poses given a set of indices in pose A and B stored in a motif2scaffold_data structure.
score fa_rep and fa_atr in the pose
References core::pose::Pose::energies(), core::scoring::fa_atr, core::scoring::fa_rep, and core::scoring::Energies::total_energies().
bool protocols::motif_grafting::movers::MotifGraftMover::get_fragments_by_CA_distances_and_NCpoints_restrains | ( | core::pose::Pose const & | p_scaffold, |
core::pose::PoseOP const & | p_motif_, | ||
utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > & | vv_scaffold_fragments_indexes, | ||
utility::vector1< std::pair< core::Size, core::Size > > & | v_motif_fragments_indexes, | ||
core::Real const & | RMSD_tol, | ||
utility::vector1< std::pair< long int, long int > > const & | max_fragment_replacement_size_delta, | ||
utility::vector1< std::pair< core::Size, core::Size > > const & | v_motif_fragments_permutation, | ||
bool const & | b_only_allow_if_N_point_match_aa_identity, | ||
bool const & | b_only_allow_if_C_point_match_aa_identity, | ||
bool const & | b_N_point_can_replace_proline, | ||
bool const & | b_C_point_can_replace_proline | ||
) |
returns by reference two vectors of indexes (vv_scaffold_fragments_indexes, v_motif_fragments_indexes) that hold the lower and upper bounds of the fragments. Indeed the corresponding to the scaffold one is a vector of vectors, since each pose_scaffold can have many matches
Generates the combinations of fragments that match the motif(s). Returns by reference: A) For each motif fragment a vector element with the indices of the motif fragments B) For each motif fragment a vector element with the indices of the fragments in the Scaffold that are within the CA distance restraint.
References core::pose::Pose::aa(), core::chemical::aa_from_oneletter_code(), core::pose::Pose::residue(), core::pose::Pose::size(), protocols::motif_grafting::movers::TR(), and core::conformation::Residue::xyz().
Referenced by get_matching_fragments().
void protocols::motif_grafting::movers::MotifGraftMover::get_matching_fragments | ( | core::pose::Pose const & | target_scaffold, |
core::pose::PoseOP const & | target_motif_, | ||
core::pose::PoseOP const & | target_contextStructure_, | ||
core::Real const & | RMSD_tol, | ||
core::Real const & | NC_points_RMSD_tol, | ||
core::Real const & | clash_atom_scale, | ||
core::Size const & | clash_cutoff, | ||
core::Size const & | min_fragment_size, | ||
std::string const & | clash_test_residue, | ||
utility::vector1< std::pair< long int, long int > > const & | max_fragment_replacement_size_delta_, | ||
utility::vector1< std::pair< core::Size, core::Size > > const & | combinatory_fragment_size_delta, | ||
utility::vector1< utility::vector1< core::Size > > const & | vvr_hotspots, | ||
bool const & | b_full_motif_bb_alignment, | ||
bool const & | b_allow_independent_alignment_per_fragment, | ||
bool const & | b_graft_only_hotspots_by_sidechain_replacement, | ||
bool const & | b_only_allow_if_N_point_match_aa_identity, | ||
bool const & | b_only_allow_if_C_point_match_aa_identity, | ||
std::priority_queue< MotifMatch > & | pq | ||
) |
Return a priority queue with the sucessful epigrafts.
Return a priority queue with the successful epigrafts.
References context_clash_hash_, core::pose::xyzStripeHashPose::extract_pose_balls(), fragments_permutation_test_by_CA_distances(), generate_combinations_of_motif_fragments_by_delta_variation(), get_fragments_by_CA_distances_and_NCpoints_restrains(), get_mono_aa_pose_copy(), get_motif_scaffold_superposition_and_RMSD(), core::pose::make_atom_map(), core::pose::PoseCoordPickMode_HVY, test_epigraft_and_contextStructure_clashes(), and protocols::motif_grafting::movers::TR().
Referenced by generate_scaffold_matches().
core::pose::Pose protocols::motif_grafting::movers::MotifGraftMover::get_mono_aa_pose_copy | ( | core::pose::Pose const & | p_input, |
std::string const & | aminoacid_code | ||
) |
returns a copy of the pose that replaces all the aminoacids for a single selected aminoacid
Generates a copy of the pose with the same aminoacid type in all the positions, but keeping the bb Note: may crash or give unexpected results if you put a big residue (e.g. VAL or TRP)
References protocols::toolbox::pose_manipulation::construct_poly_uniq_restype_pose(), core::chemical::FA_STANDARD, core::pose::Pose::pdb_info(), and core::pose::Pose::size().
Referenced by get_matching_fragments().
void protocols::motif_grafting::movers::MotifGraftMover::get_motif_scaffold_superposition_and_RMSD | ( | core::pose::Pose const & | p_scaffold, |
core::pose::PoseOP const & | p_motif_, | ||
core::Real const & | RMSD_tol, | ||
core::Real const & | tip_RMSD_tol, | ||
utility::vector1< utility::vector1< core::Size > > const & | vvr_hotspots, | ||
bool const & | b_full_motif_bb_alignment, | ||
bool const & | b_allow_independent_alignment_per_fragment, | ||
bool const & | b_graft_only_hotspots_by_sidechain_replacement, | ||
utility::vector1< motif2scaffold_data > & | v_m2s_data | ||
) |
performs soperposition based on the motif and returns fragments within the RMSD_tol and also returns the Rotation and translation superposition information in the first [1] vector of each fragment
References get_bb_alignment_and_transformation_wTipsExtraInfo(), protocols::cluster::calibur::RMSD(), and protocols::motif_grafting::movers::TR().
Referenced by get_matching_fragments().
|
overridevirtual |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
References mover_name().
bool protocols::motif_grafting::movers::MotifGraftMover::get_next_nonredundant_motifmatch | ( | MotifMatch & | match, |
numeric::HomogeneousTransform< core::Real > & | match_xform | ||
) |
Used during output to discard redundant results.
References core::pose::center_of_mass(), protocols::motif_grafting::movers::MotifMatch::get_homogeneous_transform_com_from_orig(), gp_p_target_pose_, gp_r_output_cluster_tolerance_, motif_match_results_, output_transforms_, and core::pose::radius_of_gyration().
Referenced by get_next_output().
bool protocols::motif_grafting::movers::MotifGraftMover::get_next_output | ( | core::pose::Pose & | work_pose | ) |
Header only mover get_name.
Used during output to discard redundant results and apply filter
References generate_match_pose(), get_next_nonredundant_motifmatch(), gp_b_revert_graft_to_native_sequence_, gp_f_output_filter_, gp_p_contextStructure_, gp_p_target_pose_, gp_r_output_cluster_tolerance_, motif_match_results_, output_transforms_, and protocols::motif_grafting::movers::TR().
Referenced by apply(), and get_additional_output().
core::pose::Pose protocols::motif_grafting::movers::MotifGraftMover::get_rotated_and_translated_pose | ( | core::pose::Pose const & | p_scaffold, |
numeric::xyzMatrix< core::Real > const & | RotM, | ||
numeric::xyzVector< core::Real > const & | TvecA, | ||
numeric::xyzVector< core::Real > const & | TvecB | ||
) |
Function that returns by reference a rotated copy of the pose.
References core::pose::Pose::residue_type(), core::pose::Pose::set_xyz(), core::pose::Pose::size(), and core::pose::Pose::xyz().
Referenced by stich_motif_in_scaffold_by_indexes_rotation_and_translation().
void protocols::motif_grafting::movers::MotifGraftMover::init_parameters | ( | std::string const & | s_contextStructure, |
std::string const & | s_motif, | ||
core::Real const & | r_RMSD_tolerance, | ||
core::Real const & | r_NC_points_RMSD_tolerance, | ||
core::Real const & | gp_r_clash_atom_scale, | ||
core::Size const & | i_clash_score_cutoff, | ||
core::Size const & | i_min_fragment_size, | ||
std::string const & | s_combinatory_fragment_size_delta, | ||
std::string const & | s_max_fragment_replacement_size_delta, | ||
std::string const & | s_clash_test_residue, | ||
std::string const & | s_hotspots, | ||
bool & | b_full_motif_bb_alignment, | ||
bool const & | b_allow_independent_alignment_per_fragment, | ||
bool const & | b_graft_only_hotspots_by_sidechain_replacement, | ||
bool const & | b_only_allow_if_N_point_match_aa_identity, | ||
bool const & | b_only_allow_if_C_point_match_aa_identity, | ||
bool const & | b_revert_graft_to_native_sequence, | ||
bool const & | b_allow_repeat_same_graft_output, | ||
bool const & | b_reinit_every_apply, | ||
core::Real const & | r_output_cluster_tolerance, | ||
filters::FilterCOP const & | f_output_filter | ||
) |
MotifGraftMover parameters and options initializer.
References parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
core::pose::Pose protocols::motif_grafting::movers::MotifGraftMover::join_two_poses_by_jump | ( | core::pose::Pose const & | p_A, |
core::pose::Pose const & | p_B | ||
) |
returns a pose with two input poses merged (with a jump in-between) and with the PDB info corrected
References core::pose::Pose::conformation(), core::pose::Pose::fold_tree(), core::conformation::Conformation::insert_conformation_by_jump(), core::kinematics::FoldTree::num_jump(), core::pose::Pose::pdb_info(), and core::pose::Pose::size().
Referenced by generate_match_pose().
|
static |
void protocols::motif_grafting::movers::MotifGraftMover::parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables | ( | std::string const & | s_contextStructure, |
std::string const & | s_motif, | ||
core::Real const & | r_RMSD_tolerance, | ||
core::Real const & | r_NC_points_RMSD_tolerance, | ||
core::Real const & | r_clash_atom_scale, | ||
core::Size const & | i_clash_score_cutoff, | ||
core::Size const & | i_min_fragment_size, | ||
std::string const & | s_combinatory_fragment_size_delta, | ||
std::string const & | s_max_fragment_replacement_size_delta, | ||
std::string const & | s_clash_test_residue, | ||
std::string const & | s_hotspots, | ||
bool & | b_full_motif_bb_alignment, | ||
bool const & | b_allow_independent_alignment_per_fragment, | ||
bool const & | b_graft_only_hotspots_by_sidechain_replacement, | ||
bool const & | b_only_allow_if_N_point_match_aa_identity, | ||
bool const & | b_only_allow_if_C_point_match_aa_identity, | ||
bool const & | b_revert_graft_to_native_sequence, | ||
bool const & | b_allow_repeat_same_graft_output, | ||
bool const & | b_reinit_every_apply, | ||
core::Real const & | r_output_cluster_tolerance, | ||
filters::FilterCOP const & | f_output_filter | ||
) |
Fuction to parse the class options and populate their corresponding variables to the global private space.
References gp_b_allow_independent_alignment_per_fragment_, gp_b_allow_repeat_same_graft_output_, gp_b_full_motif_bb_alignment_, gp_b_graft_only_hotspots_by_sidechain_replacement_, gp_b_only_allow_if_C_point_match_aa_identity_, gp_b_only_allow_if_N_point_match_aa_identity_, gp_b_reinit_every_apply_, gp_b_revert_graft_to_native_sequence_, gp_f_output_filter_, gp_i_clash_score_cutoff_, gp_i_min_fragment_size_, gp_p_contextStructure_, gp_p_motif_, gp_r_clash_atom_scale_, gp_r_NC_points_RMSD_tolerance_, gp_r_output_cluster_tolerance_, gp_r_RMSD_tolerance_, gp_s_clash_test_residue_, gp_vp_combinatory_fragment_size_delta_, gp_vp_max_fragment_replacement_size_delta_, gp_vvr_hotspots_, core::import_pose::PDB_file, core::import_pose::pose_from_file(), and protocols::motif_grafting::movers::TR().
Referenced by init_parameters(), and parse_my_tag().
|
overridevirtual |
Fuction to parse RosettaScripts XML options.
Reimplemented from protocols::moves::Mover.
References protocols::mean_field::max(), protocols::rosetta_scripts::parse_filter(), parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables(), and protocols::motif_grafting::movers::TR().
void protocols::motif_grafting::movers::MotifGraftMover::permutate_n_vv_of_pairs | ( | utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > const & | vv_of_pairs, |
utility::vector1< std::pair< core::Size, core::Size > > & | buff_combVec, | ||
core::Size | start_index, | ||
utility::vector1< utility::vector1< std::pair< core::Size, core::Size > > > & | vv_resulting_permutations | ||
) |
As the name suggests in generates all the permutations of a vector of vectors of pairs (Alex: we should templatize this! Maybe alrready there?)
As the name suggests in generates all the permutations of a vector of vectors of pairs (Alex: we should templatize this)
Referenced by generate_combinations_of_motif_fragments_by_delta_variation().
|
static |
core::pose::Pose protocols::motif_grafting::movers::MotifGraftMover::stich_motif_in_scaffold_by_indexes_rotation_and_translation | ( | core::pose::Pose const & | p_scaffold, |
core::pose::Pose const & | p_motif_, | ||
motif2scaffold_data & | m2s_dat, | ||
bool const & | skip_motif_extremes | ||
) |
Helper function to stich (epigraft) two poses given a set of indices in pose A and B stored in a motif2scaffold_data structure.
References core::pose::Pose::append_residue_by_bond(), core::pose::Pose::append_residue_by_jump(), protocols::motif_grafting::movers::motif2scaffold_data::b_allow_independent_alignment_per_fragment, protocols::motif_grafting::movers::motif2scaffold_data::b_full_motif_bb_alignment, protocols::motif_grafting::movers::motif2scaffold_data::b_graft_only_hotspots_by_sidechain_replacement, protocols::motif_grafting::movers::compare_motif2scaffold_data_by_scaffold_low2high(), get_bb_alignment_and_transformation(), get_bb_distance(), get_rotated_and_translated_pose(), protocols::motif_grafting::movers::motif2scaffold_data::motif_fragments_RMSD, core::pose::Pose::pdb_info(), core::pose::Pose::replace_residue(), core::pose::Pose::residue(), protocols::motif_grafting::movers::motif2scaffold_data::RotM, core::pose::Pose::size(), protocols::motif_grafting::movers::TR(), protocols::motif_grafting::movers::motif2scaffold_data::TvecA, protocols::motif_grafting::movers::motif2scaffold_data::TvecB, and protocols::motif_grafting::movers::motif2scaffold_data::v_indexes.
Referenced by generate_match_pose(), and test_epigraft_and_contextStructure_clashes().
void protocols::motif_grafting::movers::MotifGraftMover::superposition_transform | ( | core::Size | natoms, |
ObjexxFCL::FArray1_double const & | weights, | ||
ObjexxFCL::FArray2_double & | ref_coords, | ||
ObjexxFCL::FArray2_double & | coords, | ||
numeric::xyzMatrix< core::Real > & | RotM, | ||
numeric::xyzVector< core::Real > & | TvecA, | ||
numeric::xyzVector< core::Real > & | TvecB | ||
) |
Helper Fortran wrapper to get the aligment of two matrixes as well as the corresponding transform.
Superposition_transform wrapper (as in Alex Ford code protocols/toolbox/superimpose.[cc,hh])
References protocols::simple_filters::coords(), protocols::toolbox::fit_centered_coords(), and protocols::toolbox::reset_x().
Referenced by get_bb_alignment_and_transformation(), and get_bb_alignment_and_transformation_wTipsExtraInfo().
void protocols::motif_grafting::movers::MotifGraftMover::test_epigraft_and_contextStructure_clashes | ( | core::pose::Pose const & | p_scaffold, |
core::pose::Pose const & | p_motif_, | ||
core::pose::Pose const & | p_contextStructure_, | ||
core::Size const & | clash_cutoff, | ||
utility::vector1< motif2scaffold_data > & | v_m2s_data, | ||
numeric::geometry::hashing::MinimalClashHash const & | context_clash_hash, | ||
core::Real | clash_atom_scale | ||
) |
Functions that takes the scaffold, motif, contextStructure and superposition transform data. Deletes from the supperposition data those transformations that can't pass the clash score.
References core::pose::Pose::append_residue_by_bond(), count_clashes_between_two_poses(), core::pose::xyzStripeHashPose::extract_pose_balls(), core::pose::make_atom_map(), protocols::mean_field::max(), core::pose::PoseCoordPickMode_HVY, core::pose::Pose::residue(), stich_motif_in_scaffold_by_indexes_rotation_and_translation(), and protocols::motif_grafting::movers::TR().
Referenced by get_matching_fragments().
|
protected |
Referenced by get_matching_fragments().
|
protected |
|
protected |
Referenced by apply(), and parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
|
protected |
|
protected |
|
protected |
Referenced by apply(), and MotifGraftMover().
|
protected |
|
protected |
|
protected |
Referenced by apply(), and parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
|
protected |
Referenced by get_next_output(), and parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
|
protected |
Referenced by get_next_output(), and parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
|
protected |
|
protected |
|
protected |
Referenced by apply(), get_next_output(), and parse_my_string_arguments_and_cast_to_globalPrivateSpaceVariables().
|
protected |
|
protected |
Referenced by apply(), get_additional_output(), get_next_nonredundant_motifmatch(), and get_next_output().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by apply(), get_additional_output(), get_next_nonredundant_motifmatch(), and get_next_output().
|
protected |
Referenced by apply(), get_next_nonredundant_motifmatch(), and get_next_output().