![]() |
Rosetta
2020.50
|
#include <LigandBindingResPlacer.hh>
Public Member Functions | |
LigandBindingResPlacer () | |
Default constructor. More... | |
LigandBindingResPlacer (utility::pointer::shared_ptr< std::map< char, LigandHashMap > > coords, data_storage::LigandResidueOP ligand_residue) | |
Constructor with arguments. More... | |
std::map< std::pair < core::Size, core::Size > , std::set< LigandCoordInfo > > | identify_possible_binders (data_storage::SmartAssemblyCOP assembly) |
Checks all residue stubs in assembly vs metal coordinates to determine which residues are potentially metal-coordinating. Return a set of SmartSewingResidueOP. More... | |
core::conformation::ResidueOP | make_aligned_residue (data_storage::SmartSewingResidueOP, std::string) |
std::pair < data_storage::SmartSegmentOP, bool > | choose_best_metal_coordinator (data_storage::SmartAssemblyOP assembly) |
Finds the best residue/rotamer to coordinate metal (Main function for class) More... | |
std::pair< LigandCoordInfo, core::Real > | best_rotamer_for_residue (std::pair< core::Size, core::Size > res, std::set< LigandCoordInfo > res_coord, data_storage::SmartAssemblyOP assembly) |
Finds the best residue/rotamer to coordinate metal for a given residue and returns for each residue type a pair of (LigandCoordInfo, distance) where distance is the distance of the metal from its ideal position. More... | |
void | replace_chimaera_ligand_parent (data_storage::SmartAssemblyOP assembly, data_storage::SmartSegmentOP chimaeric_segment, data_storage::LigandSegmentOP replacement_ligseg, bool change_n_terminal_parent, bool first_basis_is_n_terminal, core::Size chimaeric_contact_resnum, utility::vector1< std::pair< std::pair< core::Size, core::Size >, std::pair< LigandCoordInfo, core::Real > > > res_scores) |
void | revert_last_added_contact (data_storage::SmartAssemblyOP assembly) |
data_storage::LigandResidueOP | get_ligand () const |
std::map< std::pair < core::Size, core::Size > , std::set< LigandCoordInfo > > const & | get_possible_coordinations () const |
utility::pointer::shared_ptr < std::map< char, LigandHashMap > const > | get_ligand_local_coords () const |
core::Size | contacts_remaining () const |
core::Real | get_geometry_score_weight () const |
core::Real | get_best_geometry_score () const |
void | set_ligand (data_storage::LigandResidueOP lig) |
void | set_geometry_score_weight (core::Real) |
void | set_best_geometry_score (core::Real) |
void | set_ligand_local_coords (utility::pointer::shared_ptr< std::map< char, LigandHashMap > > ligand_local_coords) |
Static Public Member Functions | |
static void | parse_ligand_files (utility::vector1< data_storage::LigandDescription > &ligands) |
Parses the ligand file format. More... | |
static HashKey | generate_ligand_key (numeric::xyzVector< core::Real >) |
Generates a HashKey from an xyzVector of core::Real. More... | |
static void | parse_ideal_contacts (utility::tag::TagCOP tag, utility::vector1< data_storage::LigandDescription > &ligands) |
static void | define_ideal_contacts_subelement (utility::tag::XMLSchemaSimpleSubelementList &subs, utility::tag::XMLSchemaDefinition &xsd) |
static std::string | ligand_subtag_ct_namer (std::string tag) |
Private Attributes | |
data_storage::LigandResidueOP | ligand_ |
utility::pointer::shared_ptr < std::map< char, LigandHashMap > > | ligand_local_coords_ |
std::map< std::pair < core::Size, core::Size > , std::set< LigandCoordInfo > > | possible_coordinations_ |
core::Size | contacts_to_make_ |
data_storage::LigandContactOP | last_contact_added_ |
core::Real | geometry_score_weight_ |
core::Real | best_geometry_score_ = 0 |
core::chemical::AtomTypeSetCAP | atom_types_ |
Given a ligand and an assembly, this class identifies the potential best mutations (with chi angles) to make to add a coordinating residue to the ligand. Another class will test the geometries and make the mutations.
protocols::sewing::hashing::LigandBindingResPlacer::LigandBindingResPlacer | ( | ) |
Default constructor.
References atom_types_.
protocols::sewing::hashing::LigandBindingResPlacer::LigandBindingResPlacer | ( | utility::pointer::shared_ptr< std::map< char, LigandHashMap > > | coords, |
data_storage::LigandResidueOP | ligand_residue | ||
) |
Constructor with arguments.
References atom_types_, contacts_to_make_, protocols::simple_filters::coords(), ligand_, and ligand_local_coords_.
std::pair< LigandCoordInfo, core::Real > protocols::sewing::hashing::LigandBindingResPlacer::best_rotamer_for_residue | ( | std::pair< core::Size, core::Size > | res, |
std::set< LigandCoordInfo > | res_coord, | ||
data_storage::SmartAssemblyOP | assembly | ||
) |
Finds the best residue/rotamer to coordinate metal for a given residue and returns for each residue type a pair of (LigandCoordInfo, distance) where distance is the distance of the metal from its ideal position.
References core::conformation::Residue::atom(), core::chemical::ResidueType::atom_base(), core::chemical::ResidueType::atom_name(), atom_types_, core::kinematics::distance(), ligand_, make_aligned_residue(), protocols::sewing::hashing::IdealContact::max_contacts, protocols::mean_field::min(), core::conformation::Residue::natoms(), protocols::sewing::hashing::IdealContact::preferred_contact_angle, protocols::sewing::hashing::IdealContact::preferred_dihedral_1, protocols::sewing::hashing::IdealContact::preferred_dihedral_2, protocols::sewing::hashing::IdealContact::preferred_distance, protocols::hybridization::score, protocols::TR(), core::conformation::Atom::type(), core::conformation::Residue::type(), and core::conformation::Atom::xyz().
Referenced by choose_best_metal_coordinator().
std::pair< data_storage::SmartSegmentOP, bool > protocols::sewing::hashing::LigandBindingResPlacer::choose_best_metal_coordinator | ( | data_storage::SmartAssemblyOP | assembly | ) |
Finds the best residue/rotamer to coordinate metal (Main function for class)
References best_geometry_score_, best_rotamer_for_residue(), contacts_to_make_, geometry_score_weight_, core::pose::full_model_info::get_residue(), identify_possible_binders(), last_contact_added_, core::sequence::left, ligand_, protocols::sewing::data_storage::SmartSegment::link_to(), make_aligned_residue(), core::scoring::pair, possible_coordinations_, replace_chimaera_ligand_parent(), protocols::sewing::data_storage::SmartSegment::set_is_vital(), and protocols::TR().
core::Size protocols::sewing::hashing::LigandBindingResPlacer::contacts_remaining | ( | ) | const |
References contacts_to_make_.
|
static |
References ligand_subtag_ct_namer().
Referenced by protocols::sewing::hashing::AlignmentFileGeneratorMover::append_ligands_subelement().
|
static |
Generates a HashKey from an xyzVector of core::Real.
First identify possible metal binding residues Iterate over all residues in the set Find best coordinating rotamer for each residue per restype
References protocols::noesy_assign::round().
Referenced by identify_possible_binders(), and parse_ligand_files().
core::Real protocols::sewing::hashing::LigandBindingResPlacer::get_best_geometry_score | ( | ) | const |
References best_geometry_score_.
core::Real protocols::sewing::hashing::LigandBindingResPlacer::get_geometry_score_weight | ( | ) | const |
References geometry_score_weight_.
data_storage::LigandResidueOP protocols::sewing::hashing::LigandBindingResPlacer::get_ligand | ( | ) | const |
References ligand_.
utility::pointer::shared_ptr< std::map< char, LigandHashMap > const > protocols::sewing::hashing::LigandBindingResPlacer::get_ligand_local_coords | ( | ) | const |
References ligand_local_coords_.
std::map< std::pair< core::Size, core::Size >, std::set< LigandCoordInfo > > const & protocols::sewing::hashing::LigandBindingResPlacer::get_possible_coordinations | ( | ) | const |
References possible_coordinations_.
std::map< std::pair< core::Size, core::Size >, std::set< LigandCoordInfo > > protocols::sewing::hashing::LigandBindingResPlacer::identify_possible_binders | ( | data_storage::SmartAssemblyCOP | assembly | ) |
Checks all residue stubs in assembly vs metal coordinates to determine which residues are potentially metal-coordinating. Return a set of SmartSewingResidueOP.
First format: Map of (secstruct, map( restype, vector< LigandCoordInfo> ) ) Second format: Map of secstruct to a std::set of zinc HashKeys (generated the same basic way we do in Hasher)
References atom_types_, core::kinematics::distance(), core::sequence::end, generate_ligand_key(), core::kinematics::Stub::global2local(), ligand_, ligand_local_coords_, and protocols::TR().
Referenced by choose_best_metal_coordinator().
|
static |
Referenced by define_ideal_contacts_subelement().
core::conformation::ResidueOP protocols::sewing::hashing::LigandBindingResPlacer::make_aligned_residue | ( | data_storage::SmartSewingResidueOP | base_res, |
std::string | type | ||
) |
Iterate over all segments Iterate over all residues in the segment If it's a required residue, skip it Otherwise, convert it to a stub Transform the ligand's coordinates into the stub's local coordinates Convert the ligand atoms' coordinates into HashKeys Look for the HashKeys in the appropriate HashMap for this DSSP, and compare the atom name to see if it's a real match If it's there, add this residue to the map with the corresponding entries from LigandCoordInfo
References protocols::TR(), and protocols::kinmatch::xyz().
Referenced by best_rotamer_for_residue(), choose_best_metal_coordinator(), and replace_chimaera_ligand_parent().
|
static |
References protocols::sewing::data_storage::LigandDescription::geometry_score_threshold, protocols::sewing::data_storage::LigandDescription::ideal_contacts_str, protocols::sewing::hashing::IdealContact::ligand_atom, protocols::sewing::data_storage::LigandDescription::ligand_coord_files, protocols::sewing::hashing::IdealContact::max_contacts, protocols::sewing::hashing::IdealContact::preferred_contact_angle, protocols::sewing::hashing::IdealContact::preferred_dihedral_1, protocols::sewing::hashing::IdealContact::preferred_dihedral_2, and protocols::sewing::hashing::IdealContact::preferred_distance.
Referenced by protocols::sewing::movers::LigandBindingAssemblyMover::parse_my_tag().
|
static |
Parses the ligand file format.
References protocols::simple_filters::dssp(), generate_ligand_key(), core::conformation::membrane::in, protocols::sewing::data_storage::ligand, protocols::sewing::hashing::LigandCoordInfo::local_coords, and protocols::TR().
Referenced by protocols::sewing::movers::LigandBindingAssemblyMover::parse_my_tag().
void protocols::sewing::hashing::LigandBindingResPlacer::replace_chimaera_ligand_parent | ( | data_storage::SmartAssemblyOP | assembly, |
data_storage::SmartSegmentOP | chimaeric_segment, | ||
data_storage::LigandSegmentOP | replacement_ligseg, | ||
bool | change_n_terminal_parent, | ||
bool | first_basis_is_n_terminal, | ||
core::Size | chimaeric_contact_resnum, | ||
utility::vector1< std::pair< std::pair< core::Size, core::Size >, std::pair< LigandCoordInfo, core::Real > > > | res_scores | ||
) |
For the given residue, does the following: 1) Looks the residue up in possible_coordinations_ Make a residue of the appropriate type and transform it onto res Iterate over LigandCoorInfo and for each one set the chi angles
References ligand_, and make_aligned_residue().
Referenced by choose_best_metal_coordinator().
void protocols::sewing::hashing::LigandBindingResPlacer::revert_last_added_contact | ( | data_storage::SmartAssemblyOP | assembly | ) |
void protocols::sewing::hashing::LigandBindingResPlacer::set_best_geometry_score | ( | core::Real | best | ) |
References best_geometry_score_.
void protocols::sewing::hashing::LigandBindingResPlacer::set_geometry_score_weight | ( | core::Real | gsw | ) |
References geometry_score_weight_.
void protocols::sewing::hashing::LigandBindingResPlacer::set_ligand | ( | data_storage::LigandResidueOP | lig | ) |
References contacts_to_make_, and ligand_.
void protocols::sewing::hashing::LigandBindingResPlacer::set_ligand_local_coords | ( | utility::pointer::shared_ptr< std::map< char, LigandHashMap > > | ligand_local_coords | ) |
References ligand_local_coords_.
|
private |
Referenced by best_rotamer_for_residue(), identify_possible_binders(), and LigandBindingResPlacer().
|
private |
Referenced by choose_best_metal_coordinator(), get_best_geometry_score(), and set_best_geometry_score().
|
private |
|
private |
Referenced by choose_best_metal_coordinator(), get_geometry_score_weight(), and set_geometry_score_weight().
|
private |
Referenced by choose_best_metal_coordinator(), and revert_last_added_contact().
|
private |
|
private |
|
private |
Referenced by choose_best_metal_coordinator(), and get_possible_coordinations().