Rosetta
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::generalized_kinematic_closure::GeneralizedKIC Class Reference

#include <GeneralizedKIC.hh>

Inheritance diagram for protocols::generalized_kinematic_closure::GeneralizedKIC:
Inheritance graph
[legend]

Public Member Functions

 GeneralizedKIC ()
 Constructor for GeneralizedKIC mover. More...
 
 GeneralizedKIC (GeneralizedKIC const &src)
 Copy constructor for GeneralizedKIC mover. More...
 
 ~GeneralizedKIC () override
 Destructor for GeneralizedKIC mover. More...
 
protocols::moves::MoverOP clone () const override
 Clone operator to create a pointer to a fresh GeneralizedKIC object that copies this one. More...
 
protocols::moves::MoverOP fresh_instance () const override
 Fresh_instance operator to create a pointer to a fresh GeneralizedKIC object that does NOT copy this one. More...
 
void apply (core::pose::Pose &pose) override
 Actually apply the mover to the pose. More...
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 Returns the name of this mover ("GeneralizedKIC"). More...
 
void add_loop_residue (core::Size const residue_index)
 Add a residue (by index in the pose) to the list of residues making up the loop to be closed. More...
 
void clear_loop_residues ()
 Clears the list of loop residues. More...
 
void clear_perturber_residue_lists ()
 Clears the list of perturber residues. More...
 
void clear_perturber_residue_list (core::Size const perturber_idx)
 Clears the list of perturber residues for perturber perturber_idx. More...
 
void add_tail_residue (core::Size const residue_index)
 Add a residue (by index in the pose) to the list of residues making up the tails attached to the loop to be closed. More...
 
void check_loop_residues_sensible (core::pose::Pose const &pose)
 Check that loop residues haven't been specified multiple times. More...
 
void check_tail_residues_sensible (core::pose::Pose const &pose)
 Check that tail residues haven't been specified multiple times, and that the tail residues don't overlap with loop residues. More...
 
void set_build_ideal_geometry (bool const buildideal)
 Set whether or not this mover builds ideal geometry for the loop, or uses the existing geometry, imperfect bond lengths/angles and all. More...
 
void set_pivot_atoms (core::Size const rsd1, std::string const &at1, core::Size const rsd2, std::string const &at2, core::Size const rsd3, std::string const &at3)
 Function to set the pivot atoms for kinematic closure: More...
 
bool get_build_ideal_geometry ()
 Get whether or not this mover builds ideal geometry for the loop, or uses the existing geometry, imperfect bond lengths/angles and all. More...
 
bool last_run_successful ()
 Returns whether or not the last call to apply() sucessfully closed the loop. Defaults to false if apply() hasn't yet been called. More...
 
void close_bond (core::Size const rsd1, std::string const &at1, core::Size const rsd2, std::string const &at2, core::Size const rsd1_before, std::string const &at1_before, core::Size const rsd2_after, std::string const &at2_after, core::Real const &bondlength, core::Real const &bondangle1, core::Real const &bondangle2, core::Real const &torsion, bool const randomize_this_torsion, bool const randomize_flanking_torsions)
 Tells GeneralizedKIC to close a bond, setting bond length, bond angle, and bond torsion values. This actually just adds appropriate set_dihedral, set_bondangle, and set_bondlength perturbers to the perturber list. Note that subsequent perturbers OR the closure itself can overwrite the bond length, bond angle, or torsion angles set here. More...
 
void set_selector_type (selector::selector_type const &stype)
 Set the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters). More...
 
void set_selector_type (std::string const &stypename)
 Set the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters). This sets the selector by name. More...
 
void set_selector_scorefunction (core::scoring::ScoreFunctionOP sfxn)
 Set the selector's scorefunction. More...
 
void set_selector_kbt (core::Real const &kbt)
 Set the selector's Boltzmann temperature value. More...
 
selector::selector_type get_selector_type () const
 Get the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters). More...
 
std::string get_selector_type_name () const
 Get the name of the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters). More...
 
void add_perturber ()
 Add a new perturber to the list of perturbers. More...
 
void add_perturber (perturber::perturber_effect const &effect)
 Add a new perturber to the list of perturbers, setting the effect. More...
 
void add_perturber (std::string const &effectname)
 Add a new perturber to the list of perturbers, setting the effect by effect name string. More...
 
void set_perturber_effect (core::Size const perturber_index, perturber::perturber_effect const &effect)
 Set a perturber's effect. More...
 
void load_perturber_bin_params (core::Size const perturber_index, std::string const &bin_params_file)
 Initialize a perturber's BinTransitionCalculator object, and load a bin_params file. More...
 
void load_perturber_bin_params (std::string const &bin_params_file)
 Initialize a perturber's BinTransitionCalculator object, and load a bin_params file. More...
 
void set_perturber_iterations (core::Size const perturber_index, core::Size const val)
 Set the number of iterations for a perturber. More...
 
void set_perturber_iterations (core::Size const val)
 Set the number of iterations for a perturber. More...
 
void set_perturber_must_switch_bins (core::Size const perturber_index, bool const val)
 Set whether the perturb_backbone_by_bins perturber requires residues to change their torsion bins every move, or whether they can stay within the same bin. More...
 
void set_perturber_must_switch_bins (bool const val)
 Set whether the perturb_backbone_by_bins perturber requires residues to change their torsion bins every move, or whether they can stay within the same bin. More...
 
void set_perturber_bin (core::Size const perturber_index, std::string const &bin)
 Set the bin for the set_backbone_bin perturber. More...
 
void set_perturber_bin (std::string const &bin)
 Set the bin for the set_backbone_bin perturber. More...
 
void set_perturber_custom_rama_table (core::Size const perturber_index, std::string const &table_name)
 Set the custom Ramachandran table for the randomize_alpha_backbone_by_rama perturber. More...
 
void set_perturber_custom_rama_table (core::Size const perturber_index, core::scoring::Rama_Table_Type const table_type)
 Set the custom Ramachandran table for the randomize_alpha_backbone_by_rama perturber. More...
 
void set_perturber_custom_rama_table (std::string const &table_name)
 Set the curstom Ramachandran table for the randomize_alpha_backbone_by_rama perturber. More...
 
void set_perturber_custom_rama_table (core::scoring::Rama_Table_Type const table_type)
 Set the curstom Ramachandran table for the randomize_alpha_backbone_by_rama perturber. More...
 
void set_perturber_attach_boinc_ghost_observer (core::Size const perturber_index, bool const setting)
 Set whether the perturber's generated poses should be used for BOINC graphics. More...
 
void set_perturber_attach_boinc_ghost_observer (bool const setting)
 Set whether the perturber's generated poses should be used for BOINC graphics. More...
 
void add_value_to_perturber_value_list (core::Size const perturber_index, core::Real const &val)
 Add a value to the list of values that a perturber takes. More...
 
void add_value_to_perturber_value_list (core::Real const &val)
 Add a value to the list of values that a perturber takes. This operates on the last perturber in the perturber list. More...
 
void add_residue_to_perturber_residue_list (core::Size const perturber_index, core::Size const residue_index)
 Add a residue to the list of residues that a perturber takes. Note that residue_index is based on indices of the ORIGINAL POSE, not the loop in isolation. More...
 
void add_residue_to_perturber_residue_list (core::Size const residue_index)
 Add a residue to the list of residues that a perturber takes. Note that residue_index is based on indices of the ORIGINAL POSE, not the loop in isolation. This version acts on the last perturber added. More...
 
void add_atomset_to_perturber_atomset_list (core::Size const perturber_index, utility::vector1< core::id::NamedAtomID > const &atomset)
 Add a set of AtomIDs to the list of sets of AtomIDs that a perturber takes. More...
 
void add_atomset_to_perturber_atomset_list (utility::vector1< core::id::NamedAtomID > const &atomset)
 Add a set of AtomIDs to the list of sets of AtomIDs that a perturber takes. This operates on the last perturber in the perturber list. More...
 
void add_filter ()
 Add a new filter to the list of filters. More...
 
void add_filter (filter::filter_type const &filtertype)
 Add a new filter to the list of filters, setting the filter type. More...
 
void add_filter (std::string const &filtertypename)
 Add a new filter to the list of filters, setting the filter type by name. More...
 
void add_filter_parameter (core::Size const filter_index, std::string const &param_name, core::Real const &value)
 Add a real-valued parameter to a filter's parameter list. More...
 
void add_filter_parameter (core::Size const filter_index, std::string const &param_name, core::Size const value)
 Add an integer-valued parameter to a filter's parameter list. More...
 
void add_filter_parameter (core::Size const filter_index, std::string const &param_name, bool const value)
 Add a Boolean-valued parameter to a filter's parameter list. More...
 
void add_filter_parameter (core::Size const filter_index, std::string const &param_name, std::string const &value)
 Add a string-valued parameter to a filter's parameter list. More...
 
void add_filter_parameter (std::string const &param_name, core::Real const &value)
 Add a real-valued parameter to the last filter's parameter list. More...
 
void add_filter_parameter (std::string const &param_name, core::Size const value)
 Add an integer-valued parameter to the last filter's parameter list. More...
 
void add_filter_parameter (std::string const &param_name, bool const value)
 Add a Boolean-valued parameter to the last filter's parameter list. More...
 
void add_filter_parameter (std::string const &param_name, std::string const &value)
 Add a string-valued parameter to the last filter's parameter list. More...
 
void set_filter_resnum (core::Size const filter_index, core::Size const value)
 Set the residue number that a backbone_bin filter is acting on. More...
 
void set_filter_resnum (core::Size const value)
 Set the residue number that a backbone_bin filter is acting on. More...
 
void set_filter_bin (core::Size const filter_index, std::string const &name_in)
 Set the bin name that a backbone_bin filter is looking for. More...
 
void set_filter_bin (std::string const &name_in)
 Set the bin name that a backbone_bin filter is looking for. More...
 
void set_filter_rama_cutoff_energy (core::Size const filter_index, core::Real const &cutoff_energy)
 Set the rama term cutoff energy for the alpha_aa_rama_check filter. More...
 
void set_filter_rama_cutoff_energy (core::Real const &cutoff_energy)
 Set the rama term cutoff energy for the alpha_aa_rama_check filter. More...
 
void set_filter_attach_boinc_ghost_observer (core::Size const filter_index, bool const setting)
 Set whether the filter's generated poses should be used for BOINC graphics. More...
 
void set_filter_attach_boinc_ghost_observer (bool const setting)
 Set whether the filter's generated poses should be used for BOINC graphics. More...
 
void load_filter_bin_params (core::Size const filter_index, std::string const &bin_params_file)
 Initialize a filter's BinTransitionCalculator object, and load a bin_params file. More...
 
void load_filter_bin_params (std::string const &bin_params_file)
 Initialize a filter's BinTransitionCalculator object, and load a bin_params file. More...
 
void set_closure_attempts (core::Size const attempts)
 Set the number of closure attempts. More...
 
core::Size get_closure_attempts () const
 Returns the number of closure attempts. More...
 
void set_ntries_before_giving_up (core::Size const ntries)
 Sets number of tries before giving up. More...
 
core::Size get_ntries_before_giving_up () const
 Gets number of tries before giving up. More...
 
core::Size min_solution_count () const
 Gets the number of solutions that must be found before stopping prematurely (i.e. before n_closure_attempts_ is reached). More...
 
void set_min_solution_count (core::Size const count_in)
 Sets the number of solutions that must be found before stopping prematurely (i.e. before n_closure_attempts_ is reached). More...
 
void clear_stored_solutions ()
 Clear the stored solution poses. More...
 
void set_preselection_mover (protocols::moves::MoverOP mover)
 Sets the mover that will be applied to all solutions that pass filters prior to applying the selector. More...
 
void set_attach_boinc_ghost_observer (bool const setting)
 Sets whether we are attaching a BOINC "ghost" pose observer. More...
 
bool attach_boinc_ghost_observer () const
 Gets whether we are attaching a BOINC "ghost" pose observer. More...
 
void set_low_memory_mode (bool const setting)
 Sets whether we're using low-memory mode. More...
 
bool low_memory_mode () const
 Gets whether we're using low-memory mode. More...
 
void set_dont_fail_if_no_solution_found (bool const setting)
 Sets whether the mover sets its status to failure of no solution is found. More...
 
bool dont_fail_if_no_solution_found () const
 Gets whether the mover sets its status to failure of no solution is found. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
void set_correct_polymer_dependent_atoms (bool const setting)
 Sets whether this mover corrects positions of polymer-dependent atoms. More...
 
bool correct_polymer_dependent_atoms () const
 Gets whether this mover corrects positions of polymer-dependent atoms. More...
 
void provide_citation_info (basic::citation_manager::CitationCollectionList &) const override
 Provide the citation. More...
 
- Public Member Functions inherited from protocols::moves::Mover
 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...
 
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...
 
virtual core::pose::PoseOP get_additional_output ()
 Mechanism by which a mover may return multiple output poses from a single input pose. 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 Stringsinfo ()
 non-const accessor More...
 
virtual Strings const & info () const
 const accessor More...
 

Static Public Member Functions

static std::string mover_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
- Static Public Member Functions inherited from protocols::moves::Mover
static std::string name ()
 
static void register_options ()
 Overload this static method if you access options within the mover. More...
 

Private Member Functions

void get_path (core::Size const first_atom, core::Size const second_atom, core::conformation::Residue const &rsd, utility::vector1< core::Size > &path_indices)
 Gets a path through atoms in the residue from one connection atom to another within a residue. More...
 
core::Size get_connection (core::Size const res_with_connection, core::Size const other_res, core::pose::Pose const &pose)
 Function to get the FIRST connection in res_with_connection that connects it to other_res: More...
 
bool has_geometric_connection (core::Size const residue1, core::Size const residue2, core::pose::Pose const &pose)
 Function that returns true if two residues in a pose have a direct geometric connection, and false otherwise. More...
 
void infer_anchor_connIDs (core::pose::Pose const &pose)
 As the list of residues in the loop to be closed is updated, we need to figure out how that loop is connected to the geometry outside of the loop (i.e. what's considred the connection to stationary geometry). This function loops through all connIDs on the terminal residues of the loop to be closed and picks the first one that links to geometry not in the loop as the anchor connnection. TODO: Add a manual override to specifiy that a different connection is the anchor. More...
 
void addloweranchor (core::pose::Pose &perturbedloop_pose, core::pose::Pose const &pose)
 Find the residue that is the anchor of the lower end of the loop that we're about to close and add it to the loop pose by a jump. More...
 
void addloopgeometry (core::pose::Pose &perturbedloop_pose, core::pose::Pose const &pose, bool const build_ideal, utility::vector1< std::pair< core::Size, core::Size > > &residue_map)
 Add the loop geometry from the starting pose to the temporary pose used for kinematic closure. This will build ideal geometry if build_ideal==true (NOT YET TESTED). More...
 
void addtailgeometry (core::pose::Pose &perturbedloop_pose, core::pose::Pose const &pose, bool const build_ideal, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > &tail_residue_map)
 Add the tail geometry from the starting pose to the temporary pose used for kinematic closure. This will build ideal geometry if build_ideal==true (NOT YET TESTED). More...
 
void addupperanchor (core::pose::Pose &perturbedloop_pose, core::pose::Pose const &pose)
 Find the residue that is the anchor of the upper end of the loop that we're about to close and add it to the loop pose by a bond. More...
 
bool doKIC (core::pose::Pose const &pose, core::pose::Pose const &original_pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > const &tail_residue_map, core::Size &solution_index, utility::vector1< core::Real > &selected_torsions, utility::vector1< core::Real > &selected_bondangles, utility::vector1< core::Real > &selected_bondlengths)
 Do the actual kinematic closure. More...
 
void generate_atomlist (core::pose::Pose const &pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map)
 Generate the list of atomIDs for the chain that will be closed by kinematic closure. More...
 
void generate_bridgeobjects_data_from_atomlist (utility::vector1< utility::fixedsizearray1< core::Real, 3 > > &atoms, utility::vector1< core::Real > &dt, utility::vector1< core::Real > &da, utility::vector1< core::Real > &db, utility::vector1< core::Size > &order)
 Generate the numeric::kinematic_closure::bridgeObjects data from the atomlist_ object. More...
 
core::Size get_perturbedloop_rsd (core::Size const original_pose_rsd, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map)
 Given a residue_map vector of pairs, where each pair is < residue_index_in_perturbedloop_pose, residue_index_in_original_pose >, and a residue index in the original pose, return the corresponding residue index in the perturbed loop pose. More...
 
void pick_pivots (core::pose::Pose const &original_pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< core::Size > &pivots)
 Pick the pivots for kinematic closure. More...
 
void apply_perturbations (core::pose::Pose const &loop_pose, core::pose::Pose const &original_pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > const &tail_residue_map, utility::vector1< core::Real > &torsions, utility::vector1< core::Real > &bondangles, utility::vector1< core::Real > &bondlengths) const
 Apply the list of perturbers (everything in perturberlist_) to alter the desired torsion, desired angle, and desired bond length lists prior to calling bridgeObjects. More...
 
void filter_solutions (core::pose::Pose const &original_pose, core::pose::Pose const &loop_pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > const &tail_residue_map, utility::vector1< std::pair< core::id::AtomID, numeric::xyzVector< core::Real > > > const &atomlist, utility::vector1< utility::vector1< core::Real > > &torsions, utility::vector1< utility::vector1< core::Real > > &bondangles, utility::vector1< utility::vector1< core::Real > > &bondlengths, int &nsol) const
 Apply filters to the list of solutions, and proceed to eliminate any and all that fail to pass filters. More...
 
core::Size select_solution (core::pose::Pose const &pose, core::pose::Pose const &original_pose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > const &tail_residue_map, utility::vector1< std::pair< core::id::AtomID, numeric::xyzVector< core::Real > > > const &atomlist, utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &torsions, utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &bondangles, utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &bondlengths, utility::vector1< core::Size > const &nsol_for_attempt, core::Size const total_solutions, utility::vector1< core::Real > const &energies_for_solution) const
 Applies the selector to choose a solution. More...
 
void prune_extra_atoms (utility::vector1< core::Size > &pivots)
 Trims extra atoms from the start and end of the atom list, if the first and last pivots are not the fifth and fifth-last atoms, respectively. More...
 
bool preselection_mover_exists () const
 Returns whether a preselection mover has been specified. More...
 
void add_solution (core::pose::PoseOP pose_in)
 Add a solution to the solutions list. More...
 
void set_final_solution (core::pose::Pose &output_pose, core::Size const solution_index) const
 Sets the pose to a particular solution from the solutions list. More...
 
protocols::moves::MoverStatus set_final_solution (core::pose::Pose &pose, core::pose::Pose &looppose, utility::vector1< std::pair< core::Size, core::Size > > const &residue_map, utility::vector1< std::pair< core::Size, core::Size > > const &tail_residue_map, utility::vector1< core::Real > const &torsions, utility::vector1< core::Real > const &bondangles, utility::vector1< core::Real > const &bondlengths) const
 Sets the pose to a particular solution from the solutions list. More...
 
core::Size total_stored_solutions () const
 Return the number of stored solutions. More...
 

Private Attributes

utility::vector1< core::Sizeloopresidues_
 The list of residues (as inidices of the original pose) making up the loop to be closed. More...
 
utility::vector1< core::Sizetailresidues_
 The list of tail residues (as indices of the original pose) that will "come along for the ride" as the loop moves. These must be attached to the original loop, either directly, or through other tail residues. More...
 
core::Size lower_anchor_connID_
 The lower end of the loop to be closed is presumably connected to geometry that is not moved by this mover. However, the connection could be through backbone or sidechain. The mover needs to know the connection ID on the lower end of the loop to the anchor geometry. Note: This will be set to 0 if the only connection that this residue can form is to the loop. More...
 
core::Size upper_anchor_connID_
 The upper end of the loop to be closed is presumably connected to geometry that is not moved by this mover. However, the connection could be through backbone or sidechain. The mover needs to know the connection ID on the upper end of the loop to the anchor geometry. Note: This will be set to 0 if the only connection that this residue can form is to the loop. More...
 
bool build_ideal_geometry_
 Should the mover build ideal geometry for the loop to be closed? Default true. More...
 
bool last_run_successful_
 Was the last apply() successful in generating a new kinematically-closed structure? More...
 
utility::vector1< std::pair< core::id::AtomID, numeric::xyzVector< core::Real > > > atomlist_
 List of the atoms in the segment to be closed, and their x,y,z coordinates. Note that the atomIDs refer to residue indices that correspond to the temporary pose created by the apply() function, not to the indices in the original pose. More...
 
core::Size pivot_1_rsd_
 Pivot residue 1 (index based on original pose). More...
 
std::string pivot_1_atmname_
 Pivot atom 1 name. More...
 
core::Size pivot_2_rsd_
 Pivot residue 2 (index based on original pose). More...
 
std::string pivot_2_atmname_
 Pivot atom 2 name. More...
 
core::Size pivot_3_rsd_
 Pivot residue 3 (index based on original pose). More...
 
std::string pivot_3_atmname_
 Pivot atom 3 name. More...
 
perturber::GeneralizedKICperturberOPs perturberlist_
 List of GeneralizedKICperturbers to apply prior to kinematic closure. More...
 
filter::GeneralizedKICfilterOPs filterlist_
 List of GeneralizedKICfilters to apply to eliminate bad solutions. More...
 
selector::GeneralizedKICselectorOP selector_
 The selection algorithm to use to pick a solution from the set of solutions passing the filters. More...
 
core::Size n_closure_attempts_
 The number of closure attempts to carry out. More...
 
core::Size min_solution_count_
 If greater than zero, GenKIC will seek solutinons until it has at least this number of solutions. If it is zero, then GenKIC will seek solutions until n_closure_attempts_ is reached, or until ntries_before_giving_up_ is reached without finding a solution. More...
 
protocols::filters::ContingentFilterOP rosettascripts_filter_
 Owning pointer for the RosettaScripts ContingentFilter associated with this mover, if there is one. More...
 
bool rosettascripts_filter_exists_
 Bool determining whether there exists a RosettaScripts ContingentFilter associated with this mover. More...
 
protocols::moves::MoverOP pre_selection_mover_
 Owning pointer for a pre-selection mover applied to all solutions that will be passed to the selector. More...
 
bool pre_selection_mover_exists_
 Bool determining whether there exists a pre-selection mover that wlil be applied. More...
 
core::Size ntries_before_giving_up_
 The number of tries to make before giving up if no solution has been found yet. More...
 
utility::vector1< core::pose::PoseOPsolutions_
 Vector of owning pointers to solutions. Used for temporary storage. More...
 
bool attach_boinc_ghost_observer_
 Should we attach a BOINC "ghost" pose observer for BOINC graphics output? More...
 
bool low_memory_mode_
 Use low memory mode? Default false. More...
 
bool dont_fail_if_no_solution_found_
 By default, the mover sets its status to failure if no solution is found. If dont_fail_if_no_solution_found_ is true (not the default) then this doesn't happen. More...
 
utility::vector1< utility::vector1< core::Real > > bondangle_solutions_
 Vector of loop bond angles from final solutions. More...
 
utility::vector1< utility::vector1< core::Real > > bondlength_solutions_
 Vector of loop bond lengths from final solutions. More...
 
bool correct_polymer_dependent_atoms_
 Should we correct positions of polymer bond-dependent atoms? More...
 

Additional Inherited Members

- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef std::list< std::string > Strings
 
- Protected Member Functions inherited from protocols::moves::Mover
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...
 

Constructor & Destructor Documentation

◆ GeneralizedKIC() [1/2]

protocols::generalized_kinematic_closure::GeneralizedKIC::GeneralizedKIC ( )

Constructor for GeneralizedKIC mover.

◆ GeneralizedKIC() [2/2]

protocols::generalized_kinematic_closure::GeneralizedKIC::GeneralizedKIC ( GeneralizedKIC const &  src)

Copy constructor for GeneralizedKIC mover.

References filterlist_, perturberlist_, and solutions_.

◆ ~GeneralizedKIC()

protocols::generalized_kinematic_closure::GeneralizedKIC::~GeneralizedKIC ( )
overridedefault

Destructor for GeneralizedKIC mover.

Member Function Documentation

◆ add_atomset_to_perturber_atomset_list() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_atomset_to_perturber_atomset_list ( core::Size const  perturber_index,
utility::vector1< core::id::NamedAtomID > const &  atomset 
)

◆ add_atomset_to_perturber_atomset_list() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_atomset_to_perturber_atomset_list ( utility::vector1< core::id::NamedAtomID > const &  atomset)

Add a set of AtomIDs to the list of sets of AtomIDs that a perturber takes. This operates on the last perturber in the perturber list.

References add_atomset_to_perturber_atomset_list(), and perturberlist_.

◆ add_filter() [1/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter ( )

Add a new filter to the list of filters.

References filterlist_.

Referenced by add_filter(), and parse_my_tag().

◆ add_filter() [2/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter ( filter::filter_type const &  filtertype)

Add a new filter to the list of filters, setting the filter type.

References add_filter(), and filterlist_.

◆ add_filter() [3/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter ( std::string const &  filtertypename)

Add a new filter to the list of filters, setting the filter type by name.

See src/protocols/generalized_kinematic_closure/filter/GeneralizedKICfilter.cc for the list of filter type names.

References add_filter(), and filterlist_.

◆ add_filter_parameter() [1/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( core::Size const  filter_index,
std::string const &  param_name,
bool const  value 
)

Add a Boolean-valued parameter to a filter's parameter list.

References filterlist_.

◆ add_filter_parameter() [2/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( core::Size const  filter_index,
std::string const &  param_name,
core::Real const &  value 
)

Add a real-valued parameter to a filter's parameter list.

References filterlist_.

Referenced by add_filter_parameter(), and parse_my_tag().

◆ add_filter_parameter() [3/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( core::Size const  filter_index,
std::string const &  param_name,
core::Size const  value 
)

Add an integer-valued parameter to a filter's parameter list.

References filterlist_.

◆ add_filter_parameter() [4/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( core::Size const  filter_index,
std::string const &  param_name,
std::string const &  value 
)

Add a string-valued parameter to a filter's parameter list.

References filterlist_.

◆ add_filter_parameter() [5/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( std::string const &  param_name,
bool const  value 
)

Add a Boolean-valued parameter to the last filter's parameter list.

References add_filter_parameter(), and filterlist_.

◆ add_filter_parameter() [6/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( std::string const &  param_name,
core::Real const &  value 
)

Add a real-valued parameter to the last filter's parameter list.

References add_filter_parameter(), and filterlist_.

◆ add_filter_parameter() [7/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( std::string const &  param_name,
core::Size const  value 
)

Add an integer-valued parameter to the last filter's parameter list.

References add_filter_parameter(), and filterlist_.

◆ add_filter_parameter() [8/8]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_filter_parameter ( std::string const &  param_name,
std::string const &  value 
)

Add a string-valued parameter to the last filter's parameter list.

References add_filter_parameter(), and filterlist_.

◆ add_loop_residue()

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_loop_residue ( core::Size const  residue_index)

Add a residue (by index in the pose) to the list of residues making up the loop to be closed.

References loopresidues_, and protocols::generalized_kinematic_closure::TR().

Referenced by parse_my_tag().

◆ add_perturber() [1/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_perturber ( )

◆ add_perturber() [2/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_perturber ( perturber::perturber_effect const &  effect)

Add a new perturber to the list of perturbers, setting the effect.

References add_perturber(), and perturberlist_.

◆ add_perturber() [3/3]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_perturber ( std::string const &  effectname)

Add a new perturber to the list of perturbers, setting the effect by effect name string.

References add_perturber(), and perturberlist_.

◆ add_residue_to_perturber_residue_list() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_residue_to_perturber_residue_list ( core::Size const  perturber_index,
core::Size const  residue_index 
)

Add a residue to the list of residues that a perturber takes. Note that residue_index is based on indices of the ORIGINAL POSE, not the loop in isolation.

References perturberlist_.

Referenced by add_residue_to_perturber_residue_list(), and parse_my_tag().

◆ add_residue_to_perturber_residue_list() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_residue_to_perturber_residue_list ( core::Size const  residue_index)

Add a residue to the list of residues that a perturber takes. Note that residue_index is based on indices of the ORIGINAL POSE, not the loop in isolation. This version acts on the last perturber added.

References add_residue_to_perturber_residue_list(), and perturberlist_.

◆ add_solution()

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_solution ( core::pose::PoseOP  pose_in)
private

Add a solution to the solutions list.

Stores an owning pointer to a pose. Not used in low-memory mode (see function overload).

References low_memory_mode(), and solutions_.

Referenced by doKIC().

◆ add_tail_residue()

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_tail_residue ( core::Size const  residue_index)

Add a residue (by index in the pose) to the list of residues making up the tails attached to the loop to be closed.

"Tails" are residues that are not part of the loop to be closed, but which are attached to the loop and which "come along for the ride" as the loop moves.

References tailresidues_, and protocols::generalized_kinematic_closure::TR().

Referenced by parse_my_tag().

◆ add_value_to_perturber_value_list() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_value_to_perturber_value_list ( core::Real const &  val)

Add a value to the list of values that a perturber takes. This operates on the last perturber in the perturber list.

References add_value_to_perturber_value_list(), perturberlist_, and protocols::hybridization::val.

◆ add_value_to_perturber_value_list() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::add_value_to_perturber_value_list ( core::Size const  perturber_index,
core::Real const &  val 
)

◆ addloopgeometry()

void protocols::generalized_kinematic_closure::GeneralizedKIC::addloopgeometry ( core::pose::Pose perturbedloop_pose,
core::pose::Pose const &  pose,
bool const  build_ideal,
utility::vector1< std::pair< core::Size, core::Size > > &  residue_map 
)
private

Add the loop geometry from the starting pose to the temporary pose used for kinematic closure. This will build ideal geometry if build_ideal==true (NOT YET TESTED).

References core::pose::Pose::append_residue_by_bond(), core::conformation::Residue::clone(), loopresidues_, lower_anchor_connID_, core::conformation::Residue::n_possible_residue_connections(), core::pose::Pose::residue(), core::conformation::Residue::residue_connection_partner(), and core::pose::Pose::size().

Referenced by apply().

◆ addloweranchor()

void protocols::generalized_kinematic_closure::GeneralizedKIC::addloweranchor ( core::pose::Pose perturbedloop_pose,
core::pose::Pose const &  pose 
)
private

Find the residue that is the anchor of the lower end of the loop that we're about to close and add it to the loop pose by a jump.

References core::pose::Pose::append_residue_by_jump(), core::pose::Pose::clear(), core::conformation::Residue::clone(), loopresidues_, lower_anchor_connID_, core::pose::Pose::residue(), and core::conformation::Residue::residue_connection_partner().

Referenced by apply().

◆ addtailgeometry()

void protocols::generalized_kinematic_closure::GeneralizedKIC::addtailgeometry ( core::pose::Pose perturbedloop_pose,
core::pose::Pose const &  pose,
bool const  build_ideal,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > &  tail_residue_map 
)
private

Add the tail geometry from the starting pose to the temporary pose used for kinematic closure. This will build ideal geometry if build_ideal==true (NOT YET TESTED).

The tails are residues that are not part of the loop to be closed, but which are attached to them and which "come along for the ride" as the loop to be closed moves. This function MUST be called AFTER addloopgeometry().

References core::pose::Pose::append_residue_by_bond(), core::conformation::Residue::clone(), protocols::generalized_kinematic_closure::get_original_pose_rsd(), core::conformation::Residue::is_bonded(), loopresidues_, core::conformation::Residue::n_possible_residue_connections(), core::pose::Pose::residue(), core::conformation::Residue::residue_connection_partner(), core::pose::Pose::size(), and tailresidues_.

Referenced by apply().

◆ addupperanchor()

void protocols::generalized_kinematic_closure::GeneralizedKIC::addupperanchor ( core::pose::Pose perturbedloop_pose,
core::pose::Pose const &  pose 
)
private

◆ apply()

void protocols::generalized_kinematic_closure::GeneralizedKIC::apply ( core::pose::Pose pose)
overridevirtual

◆ apply_perturbations()

void protocols::generalized_kinematic_closure::GeneralizedKIC::apply_perturbations ( core::pose::Pose const &  loop_pose,
core::pose::Pose const &  original_pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > const &  tail_residue_map,
utility::vector1< core::Real > &  torsions,
utility::vector1< core::Real > &  bondangles,
utility::vector1< core::Real > &  bondlengths 
) const
private

Apply the list of perturbers (everything in perturberlist_) to alter the desired torsion, desired angle, and desired bond length lists prior to calling bridgeObjects.

Apply the list of perturbers (everything in perturberlist_) to alter the desired torsion, desired angle, and desired bond length lists prior to calling bridgeObjects. Note that later perturbers might overwrite earlier perturbers' effects.

Parameters
[in]loop_poseA pose consisting of just the loop to be closed.
[in]original_poseA pose consisting of the full, original structure.
[in]residue_map– The mapping of (residue in loop_pose, residue in original_pose).
[in]tail_residue_map– The mapping of (tail residue in loop_pose, tail residue in original_pose).
[in,out]torsions– The desired torsion angles, potentially altered or overwritten by the perturbers.
[in,out]bondangles– The desired bond angles, potentially altered or overwritten by the perturbers.
[in,out]bondlenghts– The desired bond lengths, potentially altered or overwritten by the perturbers.

References atomlist_, protocols::generalized_kinematic_closure::perturber::perturb_dihedral_bbg, perturberlist_, and protocols::generalized_kinematic_closure::TR().

Referenced by doKIC().

◆ attach_boinc_ghost_observer()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::attach_boinc_ghost_observer ( ) const
inline

Gets whether we are attaching a BOINC "ghost" pose observer.

Only does anything in the BOINC graphics build.

References attach_boinc_ghost_observer_.

Referenced by doKIC().

◆ check_loop_residues_sensible()

void protocols::generalized_kinematic_closure::GeneralizedKIC::check_loop_residues_sensible ( core::pose::Pose const &  pose)

Check that loop residues haven't been specified multiple times.

Also checks that the loop residues are all within the pose.

References loopresidues_, and core::pose::Pose::size().

Referenced by apply().

◆ check_tail_residues_sensible()

void protocols::generalized_kinematic_closure::GeneralizedKIC::check_tail_residues_sensible ( core::pose::Pose const &  pose)

Check that tail residues haven't been specified multiple times, and that the tail residues don't overlap with loop residues.

Also checks that the tail residues are all within the pose.

References loopresidues_, core::pose::Pose::size(), and tailresidues_.

Referenced by apply().

◆ clear_loop_residues()

void protocols::generalized_kinematic_closure::GeneralizedKIC::clear_loop_residues ( )

Clears the list of loop residues.

References loopresidues_.

◆ clear_perturber_residue_list()

void protocols::generalized_kinematic_closure::GeneralizedKIC::clear_perturber_residue_list ( core::Size const  perturber_idx)

Clears the list of perturber residues for perturber perturber_idx.

References perturberlist_.

Referenced by clear_perturber_residue_lists().

◆ clear_perturber_residue_lists()

void protocols::generalized_kinematic_closure::GeneralizedKIC::clear_perturber_residue_lists ( )

Clears the list of perturber residues.

References clear_perturber_residue_list(), and perturberlist_.

◆ clear_stored_solutions()

void protocols::generalized_kinematic_closure::GeneralizedKIC::clear_stored_solutions ( )

Clear the stored solution poses.

References solutions_.

Referenced by apply().

◆ clone()

protocols::moves::MoverOP protocols::generalized_kinematic_closure::GeneralizedKIC::clone ( ) const
overridevirtual

Clone operator to create a pointer to a fresh GeneralizedKIC object that copies this one.

Reimplemented from protocols::moves::Mover.

Referenced by parse_my_tag().

◆ close_bond()

void protocols::generalized_kinematic_closure::GeneralizedKIC::close_bond ( core::Size const  rsd1,
std::string const &  at1,
core::Size const  rsd2,
std::string const &  at2,
core::Size const  rsd1_before,
std::string const &  at1_before,
core::Size const  rsd2_after,
std::string const &  at2_after,
core::Real const &  bondlength,
core::Real const &  bondangle1,
core::Real const &  bondangle2,
core::Real const &  torsion,
bool const  randomize_this_torsion,
bool const  randomize_flanking_torsions 
)

Tells GeneralizedKIC to close a bond, setting bond length, bond angle, and bond torsion values. This actually just adds appropriate set_dihedral, set_bondangle, and set_bondlength perturbers to the perturber list. Note that subsequent perturbers OR the closure itself can overwrite the bond length, bond angle, or torsion angles set here.

Parameters
[in]rsd1– The index of the first atom's residue (indexed based on residue indices in the original pose).
[in]at1– The name of the first atom defining the bond to be closed.
[in]rsd2– The index of the second atom's residue (indexed based on residue indices in the original pose).
[in]at1– The name of the second atom defining the bond to be closed.
[in]bondlength– The length of the bond between the two atoms.
[in]bondangle1– The bond angle defined by (atom preceding at1 in the chain to be closed), (atm1), (atm2).
[in]bondangle1– The bond angle defined by (atm1), (atm2), (atom following at2 in the chain to be closed).
[in]torsion– The torsion angle defined by (atom preceding at1 in the chain to be closed), (atm1), (atm2), (atom following at2 in the chain to be closed).

References add_atomset_to_perturber_atomset_list(), add_perturber(), add_value_to_perturber_value_list(), and core::scoring::rg.

Referenced by parse_my_tag().

◆ correct_polymer_dependent_atoms()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::correct_polymer_dependent_atoms ( ) const
inline

Gets whether this mover corrects positions of polymer-dependent atoms.

References correct_polymer_dependent_atoms_.

Referenced by doKIC(), parse_my_tag(), and set_final_solution().

◆ doKIC()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::doKIC ( core::pose::Pose const &  pose,
core::pose::Pose const &  original_pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > const &  tail_residue_map,
core::Size solution_index,
utility::vector1< core::Real > &  selected_torsions,
utility::vector1< core::Real > &  selected_bondangles,
utility::vector1< core::Real > &  selected_bondlengths 
)
private

Do the actual kinematic closure.

Inputs are pose (the loop to be closed), original_pose (the reference pose, unchanged by operation), residue_map (the mapping of residues from pose to original_pose) and tail_residue_map (the mapping of tail residues from pose to original_pose). Output is the index of the solution in the solutions_ vector. @notes The selected_torsions, selected_bondangles, and selected_bondlengths vectors are output only in low-memory mode.

References add_solution(), apply_perturbations(), atomlist_, attach_boinc_ghost_observer(), core::pose::Pose::clone(), protocols::generalized_kinematic_closure::copy_loop_pose_to_original(), correct_polymer_dependent_atoms(), protocols::generalized_kinematic_closure::correct_polymer_dependent_atoms_in_pose_segment(), filter_solutions(), generate_atomlist(), generate_bridgeobjects_data_from_atomlist(), get_ntries_before_giving_up(), low_memory_mode(), min_solution_count(), protocols::moves::MS_SUCCESS, n_closure_attempts_, protocols::forge::methods::order(), pick_pivots(), pre_selection_mover_, preselection_mover_exists(), select_solution(), selector_, protocols::generalized_kinematic_closure::set_loop_pose(), total_stored_solutions(), and protocols::generalized_kinematic_closure::TR().

Referenced by apply().

◆ dont_fail_if_no_solution_found()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::dont_fail_if_no_solution_found ( ) const
inline

Gets whether the mover sets its status to failure of no solution is found.

True means it does NOT fail if no solution is found. False is the default (fail if no solution found).

References dont_fail_if_no_solution_found_.

◆ filter_solutions()

void protocols::generalized_kinematic_closure::GeneralizedKIC::filter_solutions ( core::pose::Pose const &  original_pose,
core::pose::Pose const &  loop_pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > const &  tail_residue_map,
utility::vector1< std::pair< core::id::AtomID, numeric::xyzVector< core::Real > > > const &  atomlist,
utility::vector1< utility::vector1< core::Real > > &  torsions,
utility::vector1< utility::vector1< core::Real > > &  bondangles,
utility::vector1< utility::vector1< core::Real > > &  bondlengths,
int &  nsol 
) const
private

Apply filters to the list of solutions, and proceed to eliminate any and all that fail to pass filters.

This removes entries from the torsions, bondangles, and bondlengths lists, and decrements nsol (the number of solutions) appropriately.

Parameters
[in]original_poseA pose consisting of the full, original structure.
[in]loop_poseA pose consisting of just the loop to be closed.
[in]residue_map– The mapping of (residue in loop_pose, residue in original_pose).
[in]tail_residue_map– The mapping of (tail residue in loop_pose, tail residue in original_pose).
[in]atomlist– The list of atomIDs in the chain that was closed, plus their xyz coordinates from the original pose.
[in,out]torsions– The torsion angles returned by bridgeObjects, as a matrix of [solution #][torsion index]. Columns can be deleted by filters.
[in,out]bondangles– The bond angles returned by bridgeObjects, as a matrix of [solution #][bondangle index]. Columns can be deleted by filters.
[in,out]bondlenghts– The bond lengths returned by bridgeObjects, as a matrix of [solution #][bondlength index]. Columns can be deleted by filters.
[in,out]nsol– The number of solutions, which can be decremented as filters delete solutions. Note that this must be an int, not a core::Size.

References apply(), filterlist_, and protocols::generalized_kinematic_closure::TR().

Referenced by doKIC().

◆ fresh_instance()

protocols::moves::MoverOP protocols::generalized_kinematic_closure::GeneralizedKIC::fresh_instance ( ) const
overridevirtual

Fresh_instance operator to create a pointer to a fresh GeneralizedKIC object that does NOT copy this one.

Reimplemented from protocols::moves::Mover.

◆ generate_atomlist()

void protocols::generalized_kinematic_closure::GeneralizedKIC::generate_atomlist ( core::pose::Pose const &  pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map 
)
private

◆ generate_bridgeobjects_data_from_atomlist()

void protocols::generalized_kinematic_closure::GeneralizedKIC::generate_bridgeobjects_data_from_atomlist ( utility::vector1< utility::fixedsizearray1< core::Real, 3 > > &  atoms,
utility::vector1< core::Real > &  dt,
utility::vector1< core::Real > &  da,
utility::vector1< core::Real > &  db,
utility::vector1< core::Size > &  order 
)
private

Generate the numeric::kinematic_closure::bridgeObjects data from the atomlist_ object.

References atomlist_, protocols::forge::methods::order(), and protocols::kinmatch::xyz().

Referenced by doKIC().

◆ get_build_ideal_geometry()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::get_build_ideal_geometry ( )
inline

Get whether or not this mover builds ideal geometry for the loop, or uses the existing geometry, imperfect bond lengths/angles and all.

References build_ideal_geometry_.

◆ get_closure_attempts()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::get_closure_attempts ( ) const
inline

Returns the number of closure attempts.

Perturbation, closure, and filtering is carried out for every closure attempt. Successful closures from ALL attempts are then selected from by selectors.

References n_closure_attempts_.

◆ get_connection()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::get_connection ( core::Size const  res_with_connection,
core::Size const  other_res,
core::pose::Pose const &  pose 
)
private

Function to get the FIRST connection in res_with_connection that connects it to other_res:

References core::conformation::Residue::connections_to_residue(), core::pose::Pose::residue(), and core::pose::Pose::size().

Referenced by generate_atomlist().

◆ get_name()

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::get_name ( ) const
overridevirtual

Each derived class must specify its name. The class name.

Implements protocols::moves::Mover.

References mover_name().

◆ get_ntries_before_giving_up()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::get_ntries_before_giving_up ( ) const
inline

Gets number of tries before giving up.

The algorithm tries n_closure_attempts_ times if and only if at least one solution is found in the first ntries_before_giving_up_ attempts.

References ntries_before_giving_up_.

Referenced by doKIC().

◆ get_path()

void protocols::generalized_kinematic_closure::GeneralizedKIC::get_path ( core::Size const  first_atom,
core::Size const  second_atom,
core::conformation::Residue const &  rsd,
utility::vector1< core::Size > &  path_indices 
)
private

Gets a path through atoms in the residue from one connection atom to another within a residue.

This is not necessarily the shortest path, geometrically, but hopefully it will do for our purposes. (I didn't want to reimplement Dijkstra's algorithm, since that would tax my programming abilities and would result in unnecessarily slow performance.) This algorithm works by stepping back (child->parent) from the higher-index atom until (a) it finds the lower-index atom, or (b) it reaches the root. If it reaches the root, it then starts at the lower-index atom and traces back until it reaches an atom already in the path. The chosen path is therefore the path from one atom, to the nearest common ancestor, to the other atom.

Parameters
[in]first_atom– The index of the first atom in the path.
[in]second_atom– The index of the first atom in the path.
[in]rsd– The residue object (const instance).
[out]path_indices– The list of indices of the atoms found in the path.
Author
Vikram K. Mulligan

References core::chemical::ResidueType::atom_base(), core::conformation::Residue::natoms(), and core::conformation::Residue::type().

Referenced by generate_atomlist().

◆ get_perturbedloop_rsd()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::get_perturbedloop_rsd ( core::Size const  original_pose_rsd,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map 
)
private

Given a residue_map vector of pairs, where each pair is < residue_index_in_perturbedloop_pose, residue_index_in_original_pose >, and a residue index in the original pose, return the corresponding residue index in the perturbed loop pose.

◆ get_selector_type()

selector::selector_type protocols::generalized_kinematic_closure::GeneralizedKIC::get_selector_type ( ) const
inline

Get the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters).

References selector_.

◆ get_selector_type_name()

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::get_selector_type_name ( ) const
inline

Get the name of the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters).

References selector_.

◆ has_geometric_connection()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::has_geometric_connection ( core::Size const  residue1,
core::Size const  residue2,
core::pose::Pose const &  pose 
)
private

Function that returns true if two residues in a pose have a direct geometric connection, and false otherwise.

References core::conformation::Residue::is_bonded(), and core::pose::Pose::residue().

◆ infer_anchor_connIDs()

void protocols::generalized_kinematic_closure::GeneralizedKIC::infer_anchor_connIDs ( core::pose::Pose const &  pose)
private

As the list of residues in the loop to be closed is updated, we need to figure out how that loop is connected to the geometry outside of the loop (i.e. what's considred the connection to stationary geometry). This function loops through all connIDs on the terminal residues of the loop to be closed and picks the first one that links to geometry not in the loop as the anchor connnection. TODO: Add a manual override to specifiy that a different connection is the anchor.

References core::conformation::Residue::connection_incomplete(), protocols::generalized_kinematic_closure::is_in_list(), loopresidues_, lower_anchor_connID_, core::conformation::Residue::n_possible_residue_connections(), core::pose::Pose::residue(), core::conformation::Residue::residue_connection_partner(), tailresidues_, protocols::generalized_kinematic_closure::TR(), and upper_anchor_connID_.

Referenced by apply().

◆ last_run_successful()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::last_run_successful ( )
inline

Returns whether or not the last call to apply() sucessfully closed the loop. Defaults to false if apply() hasn't yet been called.

References last_run_successful_.

◆ load_filter_bin_params() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::load_filter_bin_params ( core::Size const  filter_index,
std::string const &  bin_params_file 
)

Initialize a filter's BinTransitionCalculator object, and load a bin_params file.

References filterlist_.

Referenced by load_filter_bin_params(), and parse_my_tag().

◆ load_filter_bin_params() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::load_filter_bin_params ( std::string const &  bin_params_file)

Initialize a filter's BinTransitionCalculator object, and load a bin_params file.

This acts on the last filter in the filter list.

References filterlist_, and load_filter_bin_params().

◆ load_perturber_bin_params() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::load_perturber_bin_params ( core::Size const  perturber_index,
std::string const &  bin_params_file 
)

Initialize a perturber's BinTransitionCalculator object, and load a bin_params file.

References perturberlist_.

Referenced by load_perturber_bin_params(), and parse_my_tag().

◆ load_perturber_bin_params() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::load_perturber_bin_params ( std::string const &  bin_params_file)

Initialize a perturber's BinTransitionCalculator object, and load a bin_params file.

This acts on the last perturber in the perturber list.

References load_perturber_bin_params(), and perturberlist_.

◆ low_memory_mode()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::low_memory_mode ( ) const
inline

Gets whether we're using low-memory mode.

If false (the default) then a vector of result poses is stored. This can use a lot of memory, though. If true, then only loop DOFs are stored. This loses the results of applying any preselection movers, though.

References low_memory_mode_.

Referenced by add_solution(), apply(), doKIC(), select_solution(), and set_final_solution().

◆ min_solution_count()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::min_solution_count ( ) const
inline

Gets the number of solutions that must be found before stopping prematurely (i.e. before n_closure_attempts_ is reached).

If nonzero, attempts are made until the specified number of solutions are found OR n_closure_attempts_ is reached (or we give up because ntries_before_giving_up_ is reached without finding any solutions). If zero, n_closure_attempts_ attempts are made, and then a solution is chosen from among the successful solutions (or we give up because ntries_before_giving_up_ is reached without finding any solutions.

References min_solution_count_.

Referenced by doKIC().

◆ mover_name()

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::mover_name ( )
static

◆ parse_my_tag()

void protocols::generalized_kinematic_closure::GeneralizedKIC::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap data_map 
)
overridevirtual

◆ pick_pivots()

void protocols::generalized_kinematic_closure::GeneralizedKIC::pick_pivots ( core::pose::Pose const &  original_pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< core::Size > &  pivots 
)
private

◆ preselection_mover_exists()

bool protocols::generalized_kinematic_closure::GeneralizedKIC::preselection_mover_exists ( ) const
inlineprivate

Returns whether a preselection mover has been specified.

References pre_selection_mover_exists_.

Referenced by apply(), doKIC(), and set_final_solution().

◆ provide_citation_info()

void protocols::generalized_kinematic_closure::GeneralizedKIC::provide_citation_info ( basic::citation_manager::CitationCollectionList &  citations) const
overridevirtual

Provide the citation.

Reimplemented from protocols::moves::Mover.

References pre_selection_mover_.

◆ provide_xml_schema()

void protocols::generalized_kinematic_closure::GeneralizedKIC::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static

◆ prune_extra_atoms()

void protocols::generalized_kinematic_closure::GeneralizedKIC::prune_extra_atoms ( utility::vector1< core::Size > &  pivots)
private

Trims extra atoms from the start and end of the atom list, if the first and last pivots are not the fifth and fifth-last atoms, respectively.

References atomlist_.

Referenced by pick_pivots().

◆ select_solution()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::select_solution ( core::pose::Pose const &  pose,
core::pose::Pose const &  original_pose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > const &  tail_residue_map,
utility::vector1< std::pair< core::id::AtomID, numeric::xyzVector< core::Real > > > const &  atomlist,
utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &  torsions,
utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &  bondangles,
utility::vector1< utility::vector1< utility::vector1< core::Real > > > const &  bondlengths,
utility::vector1< core::Size > const &  nsol_for_attempt,
core::Size const  total_solutions,
utility::vector1< core::Real > const &  energies_for_solution 
) const
private

Applies the selector to choose a solution.

If the selector could not select a solution (e.g. if the preselection mover returned failed status for every solution), this function returns 0; otherwise, returns the index of the solution in the solutions_ vector.

Parameters
[in,out]pose– The loop to be closed.
[in]original_pose– The original pose. Can be used for reference by selectors.
[in]residue_map– Mapping of (loop residue, original pose residue).
[in]tail_residue_map– Mapping of (tail residue index in pose, tail residue index in original_pose).
[in]atomlist– The list of (AtomID, original XYZ coordinates of atoms) representing the chain that was closed.
[in]torsions– Matrix of [closure attempt #][solution #][torsion #] with torsion values for each torsion angle in the chain. A selector will pick one solution.
[in]bondangles– Matrix of [closure attempt #][solution #][angle #] with bond angle values for each bond angle in the chain. A selector will pick one solution.
[in]bondlengths– Matrix of [closure attempt #][solution #][bondlength #] with bond length for each bond in the chain. A selector will pick one solution.
[in]nsol_for_attempt– List of the number of solutions for each attempt.
[in]total_solutions– Total number of solutions found.
[in]energies_for_solution– Vectors of the energies from each attempt. Used only in low-memory mode.

References low_memory_mode(), selector_, and solutions_.

Referenced by doKIC().

◆ set_attach_boinc_ghost_observer()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_attach_boinc_ghost_observer ( bool const  setting)
inline

Sets whether we are attaching a BOINC "ghost" pose observer.

Only does anything in the BOINC graphics build.

References attach_boinc_ghost_observer_.

◆ set_build_ideal_geometry()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_build_ideal_geometry ( bool const  buildideal)
inline

Set whether or not this mover builds ideal geometry for the loop, or uses the existing geometry, imperfect bond lengths/angles and all.

References build_ideal_geometry_.

◆ set_closure_attempts()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_closure_attempts ( core::Size const  attempts)

Set the number of closure attempts.

Perturbation, closure, and filtering is carried out for every closure attempt. Successful closures from ALL attempts are then selected from by selectors.

References n_closure_attempts_, and protocols::generalized_kinematic_closure::TR().

Referenced by parse_my_tag().

◆ set_correct_polymer_dependent_atoms()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_correct_polymer_dependent_atoms ( bool const  setting)
inline

Sets whether this mover corrects positions of polymer-dependent atoms.

References correct_polymer_dependent_atoms_.

Referenced by parse_my_tag().

◆ set_dont_fail_if_no_solution_found()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_dont_fail_if_no_solution_found ( bool const  setting)
inline

Sets whether the mover sets its status to failure of no solution is found.

True means it does NOT fail if no solution is found. False is the default (fail if no solution found).

References dont_fail_if_no_solution_found_.

Referenced by parse_my_tag().

◆ set_filter_attach_boinc_ghost_observer() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_attach_boinc_ghost_observer ( bool const  setting)

Set whether the filter's generated poses should be used for BOINC graphics.

Does nothing outside of the BOINC build. This version acts on the last filter in the filter list.

References filterlist_, and set_filter_attach_boinc_ghost_observer().

◆ set_filter_attach_boinc_ghost_observer() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_attach_boinc_ghost_observer ( core::Size const  filter_index,
bool const  setting 
)

Set whether the filter's generated poses should be used for BOINC graphics.

Does nothing outside of the BOINC build.

References filterlist_.

Referenced by set_filter_attach_boinc_ghost_observer().

◆ set_filter_bin() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_bin ( core::Size const  filter_index,
std::string const &  name_in 
)

Set the bin name that a backbone_bin filter is looking for.

References filterlist_.

Referenced by parse_my_tag(), and set_filter_bin().

◆ set_filter_bin() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_bin ( std::string const &  name_in)

Set the bin name that a backbone_bin filter is looking for.

This version acts on the last filter in the filter list.

References filterlist_, and set_filter_bin().

◆ set_filter_rama_cutoff_energy() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_rama_cutoff_energy ( core::Real const &  cutoff_energy)

Set the rama term cutoff energy for the alpha_aa_rama_check filter.

Set the rama term cutoff energy for the alpha_aa_rama_check and rama_prepro_check filters.

This version acts on the last filter in the filter list.

References filterlist_, and set_filter_rama_cutoff_energy().

◆ set_filter_rama_cutoff_energy() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_rama_cutoff_energy ( core::Size const  filter_index,
core::Real const &  cutoff_energy 
)

Set the rama term cutoff energy for the alpha_aa_rama_check filter.

Set the rama term cutoff energy for the alpha_aa_rama_check and rama_prepro_check filters.

References filterlist_.

Referenced by parse_my_tag(), and set_filter_rama_cutoff_energy().

◆ set_filter_resnum() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_resnum ( core::Size const  filter_index,
core::Size const  value 
)

Set the residue number that a backbone_bin filter is acting on.

References filterlist_.

Referenced by parse_my_tag(), and set_filter_resnum().

◆ set_filter_resnum() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_filter_resnum ( core::Size const  value)

Set the residue number that a backbone_bin filter is acting on.

This version acts on the last filter in the filter list.

References filterlist_, and set_filter_resnum().

◆ set_final_solution() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_final_solution ( core::pose::Pose output_pose,
core::Size const  solution_index 
) const
private

Sets the pose to a particular solution from the solutions list.

This is for regular mode, so it just grabs this from the stored solution pose vector.

References low_memory_mode(), and solutions_.

Referenced by apply().

◆ set_final_solution() [2/2]

protocols::moves::MoverStatus protocols::generalized_kinematic_closure::GeneralizedKIC::set_final_solution ( core::pose::Pose pose,
core::pose::Pose looppose,
utility::vector1< std::pair< core::Size, core::Size > > const &  residue_map,
utility::vector1< std::pair< core::Size, core::Size > > const &  tail_residue_map,
utility::vector1< core::Real > const &  torsions,
utility::vector1< core::Real > const &  bondangles,
utility::vector1< core::Real > const &  bondlengths 
) const
private

Sets the pose to a particular solution from the solutions list.

This is for low-memory mode, so it constructs the pose from DoF vectors and reapplies preselection movers.

This is for low-memory mode, so it constructs the pose from DoF vectors and reapplies preselection movers. The pose is the original pose (input/output), and the looppose is the loop alone (input/output).

References atomlist_, protocols::generalized_kinematic_closure::copy_loop_pose_to_original(), correct_polymer_dependent_atoms(), protocols::generalized_kinematic_closure::correct_polymer_dependent_atoms_in_pose_segment(), low_memory_mode(), protocols::moves::MS_SUCCESS, pre_selection_mover_, preselection_mover_exists(), protocols::generalized_kinematic_closure::set_loop_pose(), and protocols::generalized_kinematic_closure::TR().

◆ set_low_memory_mode()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_low_memory_mode ( bool const  setting)
inline

Sets whether we're using low-memory mode.

If false (the default) then a vector of result poses is stored. This can use a lot of memory, though. If true, then only loop DOFs are stored. This loses the results of applying any preselection movers, though.

References low_memory_mode_.

Referenced by parse_my_tag().

◆ set_min_solution_count()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_min_solution_count ( core::Size const  count_in)
inline

Sets the number of solutions that must be found before stopping prematurely (i.e. before n_closure_attempts_ is reached).

If nonzero, attempts are made until the specified number of solutions are found OR n_closure_attempts_ is reached (or we give up because ntries_before_giving_up_ is reached without finding any solutions). If zero, n_closure_attempts_ attempts are made, and then a solution is chosen from among the successful solutions (or we give up because ntries_before_giving_up_ is reached without finding any solutions.

References min_solution_count_.

Referenced by parse_my_tag().

◆ set_ntries_before_giving_up()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_ntries_before_giving_up ( core::Size const  ntries)

Sets number of tries before giving up.

If this is set to 0, then no such check is made. The algorithm tries n_closure_attempts_ times if and only if at least one solution is found in the first ntries_before_giving_up_ attempts.

References ntries_before_giving_up_, and protocols::generalized_kinematic_closure::TR().

Referenced by parse_my_tag().

◆ set_perturber_attach_boinc_ghost_observer() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_attach_boinc_ghost_observer ( bool const  setting)

Set whether the perturber's generated poses should be used for BOINC graphics.

Does nothing outside of the BOINC build. This version acts on the last perturber in the perturber list.

References perturberlist_, and set_perturber_attach_boinc_ghost_observer().

◆ set_perturber_attach_boinc_ghost_observer() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_attach_boinc_ghost_observer ( core::Size const  perturber_index,
bool const  setting 
)

Set whether the perturber's generated poses should be used for BOINC graphics.

Does nothing outside of the BOINC build.

References perturberlist_.

Referenced by set_perturber_attach_boinc_ghost_observer().

◆ set_perturber_bin() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_bin ( core::Size const  perturber_index,
std::string const &  bin 
)

Set the bin for the set_backbone_bin perturber.

References perturberlist_.

Referenced by parse_my_tag(), and set_perturber_bin().

◆ set_perturber_bin() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_bin ( std::string const &  bin)

Set the bin for the set_backbone_bin perturber.

This acts on the last perturber in the perturber list.

References perturberlist_, and set_perturber_bin().

◆ set_perturber_custom_rama_table() [1/4]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_custom_rama_table ( core::scoring::Rama_Table_Type const  table_type)

Set the curstom Ramachandran table for the randomize_alpha_backbone_by_rama perturber.

Set the curstom Ramachandran table for the perturb_alpha_backbone_by_rama perturber.

This acts on the last perturber in the perturber list, and works by Rama_Table_Type.

References perturberlist_, and set_perturber_custom_rama_table().

◆ set_perturber_custom_rama_table() [2/4]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_custom_rama_table ( core::Size const  perturber_index,
core::scoring::Rama_Table_Type const  table_type 
)

Set the custom Ramachandran table for the randomize_alpha_backbone_by_rama perturber.

Set the custom Ramachandran table for the perturb_alpha_backbone_by_rama perturber.

This version works by Rama_Table_Type.

References perturberlist_.

◆ set_perturber_custom_rama_table() [3/4]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_custom_rama_table ( core::Size const  perturber_index,
std::string const &  table_name 
)

Set the custom Ramachandran table for the randomize_alpha_backbone_by_rama perturber.

Set the custom Ramachandran table for the perturb_alpha_backbone_by_rama perturber.

References perturberlist_.

Referenced by parse_my_tag(), and set_perturber_custom_rama_table().

◆ set_perturber_custom_rama_table() [4/4]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_custom_rama_table ( std::string const &  table_name)

Set the curstom Ramachandran table for the randomize_alpha_backbone_by_rama perturber.

Set the curstom Ramachandran table for the perturb_alpha_backbone_by_rama perturber.

This acts on the last perturber in the perturber list.

References perturberlist_, and set_perturber_custom_rama_table().

◆ set_perturber_effect()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_effect ( core::Size const  perturber_index,
perturber::perturber_effect const &  effect 
)

Set a perturber's effect.

Parameters
[in]perturber_index– The index in the list of perturbers already added.
[in]effect– The perturber effect type, based on the perturber::perturber_effect enum (e.g. set_dihedral, randomize_backbone, etc.).

References perturberlist_.

◆ set_perturber_iterations() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_iterations ( core::Size const  perturber_index,
core::Size const  val 
)

Set the number of iterations for a perturber.

References perturberlist_, and protocols::hybridization::val.

Referenced by parse_my_tag(), and set_perturber_iterations().

◆ set_perturber_iterations() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_iterations ( core::Size const  val)

Set the number of iterations for a perturber.

This acts on the last perturber in the perturber list.

References perturberlist_, set_perturber_iterations(), and protocols::hybridization::val.

◆ set_perturber_must_switch_bins() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_must_switch_bins ( bool const  val)

Set whether the perturb_backbone_by_bins perturber requires residues to change their torsion bins every move, or whether they can stay within the same bin.

This acts on the last perturber in the perturber list.

References perturberlist_, set_perturber_must_switch_bins(), and protocols::hybridization::val.

◆ set_perturber_must_switch_bins() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_perturber_must_switch_bins ( core::Size const  perturber_index,
bool const  val 
)

Set whether the perturb_backbone_by_bins perturber requires residues to change their torsion bins every move, or whether they can stay within the same bin.

References perturberlist_, and protocols::hybridization::val.

Referenced by parse_my_tag(), and set_perturber_must_switch_bins().

◆ set_pivot_atoms()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_pivot_atoms ( core::Size const  rsd1,
std::string const &  at1,
core::Size const  rsd2,
std::string const &  at2,
core::Size const  rsd3,
std::string const &  at3 
)

Function to set the pivot atoms for kinematic closure:

References pivot_1_atmname_, pivot_1_rsd_, pivot_2_atmname_, pivot_2_rsd_, pivot_3_atmname_, and pivot_3_rsd_.

Referenced by parse_my_tag().

◆ set_preselection_mover()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_preselection_mover ( protocols::moves::MoverOP  mover)

Sets the mover that will be applied to all solutions that pass filters prior to applying the selector.

References pre_selection_mover_, and pre_selection_mover_exists_.

Referenced by parse_my_tag().

◆ set_selector_kbt()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_selector_kbt ( core::Real const &  kbt)

Set the selector's Boltzmann temperature value.

References selector_.

Referenced by parse_my_tag().

◆ set_selector_scorefunction()

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_selector_scorefunction ( core::scoring::ScoreFunctionOP  sfxn)

Set the selector's scorefunction.

References selector_.

Referenced by parse_my_tag().

◆ set_selector_type() [1/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_selector_type ( selector::selector_type const &  stype)

Set the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters).

References selector_.

Referenced by parse_my_tag().

◆ set_selector_type() [2/2]

void protocols::generalized_kinematic_closure::GeneralizedKIC::set_selector_type ( std::string const &  stypename)

Set the selector (the algorithm controlling how a solution will be chosen from among the solutions passing filters). This sets the selector by name.

References selector_.

◆ total_stored_solutions()

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::total_stored_solutions ( ) const
inlineprivate

Return the number of stored solutions.

References solutions_.

Referenced by doKIC().

Member Data Documentation

◆ atomlist_

utility::vector1< std::pair < core::id::AtomID, numeric::xyzVector<core::Real> > > protocols::generalized_kinematic_closure::GeneralizedKIC::atomlist_
private

List of the atoms in the segment to be closed, and their x,y,z coordinates. Note that the atomIDs refer to residue indices that correspond to the temporary pose created by the apply() function, not to the indices in the original pose.

Referenced by apply_perturbations(), doKIC(), generate_atomlist(), generate_bridgeobjects_data_from_atomlist(), pick_pivots(), prune_extra_atoms(), and set_final_solution().

◆ attach_boinc_ghost_observer_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::attach_boinc_ghost_observer_
private

Should we attach a BOINC "ghost" pose observer for BOINC graphics output?

Default false. Only does anything in the BOINC build.

Referenced by attach_boinc_ghost_observer(), and set_attach_boinc_ghost_observer().

◆ bondangle_solutions_

utility::vector1< utility::vector1 < core::Real > > protocols::generalized_kinematic_closure::GeneralizedKIC::bondangle_solutions_
private

Vector of loop bond angles from final solutions.

Only stored in low-memory mode.

◆ bondlength_solutions_

utility::vector1< utility::vector1 < core::Real > > protocols::generalized_kinematic_closure::GeneralizedKIC::bondlength_solutions_
private

Vector of loop bond lengths from final solutions.

Only stored in low-memory mode.

◆ build_ideal_geometry_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::build_ideal_geometry_
private

Should the mover build ideal geometry for the loop to be closed? Default true.

Referenced by apply(), get_build_ideal_geometry(), and set_build_ideal_geometry().

◆ correct_polymer_dependent_atoms_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::correct_polymer_dependent_atoms_
private

Should we correct positions of polymer bond-dependent atoms?

Default false.

Referenced by correct_polymer_dependent_atoms(), and set_correct_polymer_dependent_atoms().

◆ dont_fail_if_no_solution_found_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::dont_fail_if_no_solution_found_
private

By default, the mover sets its status to failure if no solution is found. If dont_fail_if_no_solution_found_ is true (not the default) then this doesn't happen.

Referenced by apply(), dont_fail_if_no_solution_found(), parse_my_tag(), and set_dont_fail_if_no_solution_found().

◆ filterlist_

filter::GeneralizedKICfilterOPs protocols::generalized_kinematic_closure::GeneralizedKIC::filterlist_
private

◆ last_run_successful_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::last_run_successful_
private

Was the last apply() successful in generating a new kinematically-closed structure?

Referenced by apply(), and last_run_successful().

◆ loopresidues_

utility::vector1< core::Size > protocols::generalized_kinematic_closure::GeneralizedKIC::loopresidues_
private

◆ low_memory_mode_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::low_memory_mode_
private

Use low memory mode? Default false.

If false (the default) then a vector of result poses is stored. This can use a lot of memory, though. If true, then only loop DOFs are stored. This loses the results of applying any preselection movers, though.

Referenced by low_memory_mode(), and set_low_memory_mode().

◆ lower_anchor_connID_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::lower_anchor_connID_
private

The lower end of the loop to be closed is presumably connected to geometry that is not moved by this mover. However, the connection could be through backbone or sidechain. The mover needs to know the connection ID on the lower end of the loop to the anchor geometry. Note: This will be set to 0 if the only connection that this residue can form is to the loop.

Referenced by addloopgeometry(), addloweranchor(), and infer_anchor_connIDs().

◆ min_solution_count_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::min_solution_count_
private

If greater than zero, GenKIC will seek solutinons until it has at least this number of solutions. If it is zero, then GenKIC will seek solutions until n_closure_attempts_ is reached, or until ntries_before_giving_up_ is reached without finding a solution.

Zero by default.

Referenced by min_solution_count(), and set_min_solution_count().

◆ n_closure_attempts_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::n_closure_attempts_
private

The number of closure attempts to carry out.

Perturbation, closure, and filtering is carried out for every closure attempt. Successful closures from ALL attempts are then selected from by selectors. Zero means no limit.

Referenced by doKIC(), get_closure_attempts(), and set_closure_attempts().

◆ ntries_before_giving_up_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::ntries_before_giving_up_
private

The number of tries to make before giving up if no solution has been found yet.

If this is set to 0, then no such check is made. The algorithm tries n_closure_attempts_ times if and only if at least one solution is found in the first ntries_before_giving_up_ attempts.

Referenced by get_ntries_before_giving_up(), and set_ntries_before_giving_up().

◆ perturberlist_

perturber::GeneralizedKICperturberOPs protocols::generalized_kinematic_closure::GeneralizedKIC::perturberlist_
private

◆ pivot_1_atmname_

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_1_atmname_
private

Pivot atom 1 name.

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pivot_1_rsd_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_1_rsd_
private

Pivot residue 1 (index based on original pose).

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pivot_2_atmname_

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_2_atmname_
private

Pivot atom 2 name.

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pivot_2_rsd_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_2_rsd_
private

Pivot residue 2 (index based on original pose).

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pivot_3_atmname_

std::string protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_3_atmname_
private

Pivot atom 3 name.

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pivot_3_rsd_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::pivot_3_rsd_
private

Pivot residue 3 (index based on original pose).

Referenced by pick_pivots(), and set_pivot_atoms().

◆ pre_selection_mover_

protocols::moves::MoverOP protocols::generalized_kinematic_closure::GeneralizedKIC::pre_selection_mover_
private

Owning pointer for a pre-selection mover applied to all solutions that will be passed to the selector.

Referenced by doKIC(), provide_citation_info(), set_final_solution(), and set_preselection_mover().

◆ pre_selection_mover_exists_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::pre_selection_mover_exists_
private

Bool determining whether there exists a pre-selection mover that wlil be applied.

Referenced by preselection_mover_exists(), and set_preselection_mover().

◆ rosettascripts_filter_

protocols::filters::ContingentFilterOP protocols::generalized_kinematic_closure::GeneralizedKIC::rosettascripts_filter_
private

Owning pointer for the RosettaScripts ContingentFilter associated with this mover, if there is one.

Referenced by apply(), and parse_my_tag().

◆ rosettascripts_filter_exists_

bool protocols::generalized_kinematic_closure::GeneralizedKIC::rosettascripts_filter_exists_
private

Bool determining whether there exists a RosettaScripts ContingentFilter associated with this mover.

Referenced by apply(), and parse_my_tag().

◆ selector_

selector::GeneralizedKICselectorOP protocols::generalized_kinematic_closure::GeneralizedKIC::selector_
private

The selection algorithm to use to pick a solution from the set of solutions passing the filters.

Referenced by doKIC(), get_selector_type(), get_selector_type_name(), select_solution(), set_selector_kbt(), set_selector_scorefunction(), and set_selector_type().

◆ solutions_

utility::vector1< core::pose::PoseOP > protocols::generalized_kinematic_closure::GeneralizedKIC::solutions_
private

Vector of owning pointers to solutions. Used for temporary storage.

Referenced by add_solution(), clear_stored_solutions(), GeneralizedKIC(), select_solution(), set_final_solution(), and total_stored_solutions().

◆ tailresidues_

utility::vector1< core::Size > protocols::generalized_kinematic_closure::GeneralizedKIC::tailresidues_
private

The list of tail residues (as indices of the original pose) that will "come along for the ride" as the loop moves. These must be attached to the original loop, either directly, or through other tail residues.

Referenced by add_tail_residue(), addtailgeometry(), check_tail_residues_sensible(), and infer_anchor_connIDs().

◆ upper_anchor_connID_

core::Size protocols::generalized_kinematic_closure::GeneralizedKIC::upper_anchor_connID_
private

The upper end of the loop to be closed is presumably connected to geometry that is not moved by this mover. However, the connection could be through backbone or sidechain. The mover needs to know the connection ID on the upper end of the loop to the anchor geometry. Note: This will be set to 0 if the only connection that this residue can form is to the loop.

Referenced by addupperanchor(), and infer_anchor_connIDs().


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