Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | List of all members
protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper Class Reference

A helper class for setting up square pyramidally-coordinated metals like Ni. More...

#include <SquarePyramidalMetal_Helper.hh>

Inheritance diagram for protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper:
Inheritance graph
[legend]

Public Member Functions

 SquarePyramidalMetal_Helper (std::string const &metal_name_in="Zn")
 Default constructor. More...
 
 SquarePyramidalMetal_Helper (SquarePyramidalMetal_Helper const &src)
 Copy constructor. More...
 
 ~SquarePyramidalMetal_Helper () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
- Public Member Functions inherited from protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper
 SquarePlanarMetal_Helper (std::string const &metal_name_in="Zn")
 Default constructor. More...
 
 SquarePlanarMetal_Helper (SquarePlanarMetal_Helper const &src)
 Copy constructor. More...
 
 ~SquarePlanarMetal_Helper () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
- Public Member Functions inherited from protocols::cyclic_peptide::crosslinker::Metal_HelperBase
 Metal_HelperBase (std::string const &metal_name_in="Zn")
 Default constructor. More...
 
 Metal_HelperBase (Metal_HelperBase const &src)
 Copy constructor. More...
 
 ~Metal_HelperBase () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
void add_linker_asymmetric (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection) const override
 Given a pose and a selection of exactly three residues, add the linker, align it crudely to the selected residues, and set up covalent bonds. More...
 
void add_linker_bonds_asymmetric (core::pose::Pose &pose, utility::vector1< core::Size > const &res_indices, core::Size const linker_index) const override
 Given a pose and a linker, add bonds between the linker and the residues that coordinate the linker. More...
 
void add_linker_symmetric (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection) const override
 Given a pose and a selection of exactly three residues, add the linker, align it crudely to the selected residues, and set up covalent bonds. More...
 
void add_linker_bonds_symmetric (core::pose::Pose &pose, core::Size const res1, core::Size const linker_index1, core::Size const linker_index2) const override
 Given a pose and a linker, add bonds between the linker and the residues that coordinate the linker. More...
 
void add_linker_constraints_asymmetric (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection) const override
 Given a selection of exactly three residues that have already been connected to a crosslinker, add constraints for the crosslinker. More...
 
void add_linker_constraints_symmetric (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection, bool const linker_was_added) const override
 Given a selection of exactly three residues that have already been connected to a crosslinker, add constraints for the crosslinker. More...
 
core::Size get_linker_index_asymmetric (core::pose::Pose const &pose, utility::vector1< core::Size > const &res_indices) const override
 Given indices of four residues that are already linked to a linker, get the index of the linker. More...
 
void get_linker_indices_symmetric (core::pose::Pose const &pose, utility::vector1< core::Size > const &res_indices, utility::vector1< core::Size > &linker_indices) const override
 Given indices of three cysteine residues that are already linked to pieces of a linker, get of the indices of the symmetric pieces of the linker. More...
 
bool filter_by_sidechain_distance_asymmetric (core::pose::Pose const &pose, core::select::residue_selector::ResidueSubset const &selection, core::Real const &filter_multiplier) const override
 Given a pose with residues selected to be linked by a linker, determine whether the residues are too far apart. More...
 
bool filter_by_sidechain_distance_symmetric (core::pose::Pose const &pose, core::select::residue_selector::ResidueSubset const &selection, core::Real const &filter_multiplier) const override
 Given a pose with residues selected to be linked by a linker, determine whether the residues are too far apart. More...
 
bool filter_by_constraints_energy_asymmetric (core::pose::Pose const &pose, core::select::residue_selector::ResidueSubset const &selection, core::Real const &filter_multiplier) const override
 Determine whether the sidechain-crosslinker system has too high a constraints score. More...
 
bool filter_by_constraints_energy_symmetric (core::pose::Pose const &pose, core::select::residue_selector::ResidueSubset const &selection, bool const linker_was_added, core::Real const &filter_multiplier) const override
 Determine whether the sidechain-crosslinker system has too high a constraints score. This version is for symmetric poses. More...
 
bool helper_adds_linker_residue () const override
 Does this CrosslinkerMoverHelper add a residue for the linker? More...
 
void set_metal_type_from_name (std::string const &name_in)
 Given a metal name, set the type. More...
 
std::string metal_type_string () const
 Get the current metal type, as a string. More...
 
bool adds_crosslinker_residue () const override
 Does this helper add a residue to the pose? More...
 
- Public Member Functions inherited from protocols::cyclic_peptide::crosslinker::CrosslinkerMoverHelper
 CrosslinkerMoverHelper ()
 Default constructor. More...
 
 CrosslinkerMoverHelper (CrosslinkerMoverHelper const &src)
 Copy constructor. More...
 
 ~CrosslinkerMoverHelper () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
void set_symmetry (char const symm_type_in, core::Size const symm_count_in)
 Set the symmetry for this crosslinker helper. More...
 
virtual void get_sidechain_indices (core::select::residue_selector::ResidueSubset const &selection, utility::vector1< core::Size > &res_indices) const
 Given a ResidueSubset with N residues selected, pull out the indices into a vector. More...
 
virtual bool selection_is_symmetric (core::select::residue_selector::ResidueSubset const &selection, core::pose::Pose const &pose, core::Size const expected_subunit_count) const
 Determine whether a selection is symmetric. More...
 
virtual void pre_relax_round_update_steps (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection, bool const whole_structure, bool const symmetric, bool const linker_was_added) const
 Optional steps that the helper can apply before every relaxation round. More...
 
virtual void post_relax_round_update_steps (core::pose::Pose &pose, core::select::residue_selector::ResidueSubset const &selection, bool const whole_structure, bool const symmetric, bool const linker_was_added) const
 Optional steps that the helper can apply after every relaxation round. More...
 
core::Size symm_subunits_expected () const
 Get the number of expected symmetry subunits, given the symmetry type. More...
 

Protected Member Functions

void check_residue_indices_valid (utility::vector1< core::Size > const &indices, core::pose::Pose const &pose) const override
 Check that the correct number of residues have been selected, that they are within the pose, and that they are allowed residue types. More...
 
void add_dihedral_constraints (core::pose::Pose &pose, utility::vector1< core::Size > const &res_indices) const override
 Add improper dihedral constraints to keep the metal in the plane of the liganding atoms. More...
 
void check_compatible_symmetry_type () const override
 Check that the symmetry type is one of a few compatible types. More...
 
- Protected Member Functions inherited from protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper
bool is_allowed_type (core::chemical::ResidueType const &type) const override
 Given a residue type, check whether it's an allowed residue type for square planarly coordinating metals. More...
 
void add_angle_constraints (core::pose::Pose &pose, utility::vector1< core::Size > const &res_indices, core::Size const i, core::Size const j) const override
 Given a pose, a list of residues, and indices i and j in that list, add angle constraints between the two residues specified. More...
 
void add_dihedral_constraint_to_stream (std::stringstream &cststream, core::pose::Pose const &pose, utility::vector1< core::Size > const &res_indices) const
 Given a stringstream, a pose, and a four-residue selection, add dihedral constraints to the stringstream. More...
 
core::Real const & ideal_bond_length (Metal_HelperBase_Metal const metal_type, Metal_HelperBase_MetalLigand const ligand_type) const override
 Given a metal type and a metal-liganding atom type, return the ideal bond length. More...
 
void set_pyramidal (bool const setting)
 Set whether this is actually the square pyramidal case. More...
 
bool is_pyramidal () const
 Return whether this is actually the square pyramidal case. More...
 
- Protected Member Functions inherited from protocols::cyclic_peptide::crosslinker::Metal_HelperBase
void set_metal_bond_length (core::pose::Pose &pose, core::Size const res_index) const
 Given a pose and a residue with the VIRTUAL_METAL_CONJUGATION variant type already added, set the metal-metal liganding atom bond length appropriately for the metal in question. More...
 
Metal_HelperBase_MetalLigand liganding_atom_from_restype (core::chemical::ResidueType const &restype) const
 Given a ResidueType with the VIRTUAL_METAL_CONJUGATION variant type already added, get the metal-liganding atom enum. More...
 
std::string metal_type_string_from_enum (Metal_HelperBase_Metal const metal_type) const
 Given a metal type enum, return the corresponding string. More...
 
Metal_HelperBase_Metal metal_type_enum_from_string (std::string const &metal_type_string) const
 Given a metal type string, return the corresponding enum. More...
 
- Protected Member Functions inherited from protocols::cyclic_peptide::crosslinker::CrosslinkerMoverHelper
virtual bool filter_by_constraints_energy (core::pose::Pose const &pose, core::select::residue_selector::ResidueSubset const &selection, bool const symmetric, bool const linker_was_added, core::Real const &filter_multiplier) const
 Determine whether the sidechain-crosslinker system has too high a constraints score. Both the symmetric and asymmetric versions call this code. More...
 
char symm_type () const
 Get the symmetry type. More...
 
core::Size symm_count () const
 Get the symmetry copy count. For example, symm_type_='C' and symm_count_=3 would specify C3 symmetry. A value of 1 means asymmetry. 1 by default. More...
 

Detailed Description

A helper class for setting up square pyramidally-coordinated metals like Ni.

It is convenient to have this inherit from SquarePlanarMetal_Helper.

Constructor & Destructor Documentation

protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::SquarePyramidalMetal_Helper ( std::string const &  metal_name_in = "Zn")

Default constructor.

Constructors ///.

Default constructor

References protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper::set_pyramidal().

protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::SquarePyramidalMetal_Helper ( SquarePyramidalMetal_Helper const &  src)
protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::~SquarePyramidalMetal_Helper ( )
override

Destructor (important for properly forward-declaring smart-pointer members)

Member Function Documentation

void protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::add_dihedral_constraints ( core::pose::Pose pose,
utility::vector1< core::Size > const &  res_indices 
) const
overrideprotectedvirtual
void protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::check_compatible_symmetry_type ( ) const
overrideprotectedvirtual

Check that the symmetry type is one of a few compatible types.

Square pyramidal metals are inherently asymmetric, so this always throws.

Reimplemented from protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper.

void protocols::cyclic_peptide::crosslinker::SquarePyramidalMetal_Helper::check_residue_indices_valid ( utility::vector1< core::Size > const &  indices,
core::pose::Pose const &  pose 
) const
overrideprotectedvirtual

Check that the correct number of residues have been selected, that they are within the pose, and that they are allowed residue types.

Public Methods ///.

Private Methods /// Check that the correct number of residues have been selected, that they are within the pose, and that they are allowed residue types.

Reimplemented from protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper.

References protocols::cyclic_peptide::crosslinker::SquarePlanarMetal_Helper::is_allowed_type(), core::pose::Pose::residue_type(), and core::pose::Pose::total_residue().


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