Rosetta  2020.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Functions
core::select::util Namespace Reference

Classes

class  SelectResiduesByLayer
 

Typedefs

typedef std::pair< std::set
< core::Size >, std::set
< core::Size > > 
InterfacePair
 
using HTReal = numeric::HomogeneousTransform< core::Real >
 
typedef
utility::pointer::shared_ptr
< SelectResiduesByLayer
SelectResiduesByLayerOP
 
typedef
utility::pointer::shared_ptr
< SelectResiduesByLayer const > 
SelectResiduesByLayerCOP
 

Functions

bool determine_whether_point_is_buried (numeric::xyzVector< core::Real > const &point_coordinates, core::pose::Pose const &pose, core::Real const angle_exponent, core::Real const angle_shift_factor, core::Real const dist_exponent, core::Real const dist_midpoint, core::Real const burial_threshold)
 Given a point in 3D space, determine whether or not that point is buried by the method of sidechain neighbor cones. More...
 
core::Real calculate_point_in_cone (numeric::xyzVector< core::Real > const &point_coordinates, numeric::xyzVector< core::Real > const &conevect, numeric::xyzVector< core::Real > const &conevect_coordinate_2, core::Real const angle_exponent, core::Real const angle_shift_factor, core::Real const dist_exponent, core::Real const dist_midpoint)
 Given a point in 3D space, and a vector and floats defining a cone, determine the extent to which the point is in the cone. More...
 
void find_interface_pointing_residues_from_neighbs (core::pose::Pose const &pose, InterfacePair const &interface_pair, core::Real const nearby_atom_cutoff, core::Real const vector_angle_cutoff, core::Real const vector_dist_cutoff, utility::vector1_bool &interface_residues)
 looks at the big set and figures out what is actually pointing towards the interface More...
 
bool any_atoms_within_cutoff (core::conformation::Residue &res1, core::conformation::Residue &res2, core::Real cutoff)
 find nearby atoms to other in interface More...
 
InterfacePair find_neighbors_within_CB_cutoff (core::pose::Pose const &pose, core::Real big_cutoff, core::Size chain1, core::Size chain2)
 neighbors to look for vectors within (big set here) More...
 
InterfacePair find_jump_partners_within_CB_cutoff (core::pose::Pose const &pose, core::Real big_cutoff, int jump_num)
 find neighbors to look for vectors within using a big cutoff for CBs More...
 
numeric::xyzVector< core::Realcbeta_vector (core::conformation::Residue &res)
 the Cbeta vector(s) from on rsd to another More...
 
numeric::xyzVector< core::Realselect_coord_for_residue (core::conformation::Residue &res)
 the action coordinate for each residue More...
 
bool res1_pointed_at_res2 (core::conformation::Residue &res1, core::conformation::Residue &res2, core::Real angle_cutoff, core::Real dist_cutoff)
 out if res1 and res2 are pointing at eachother More...
 
void fill_in_chain_terminii (core::pose::Pose const &pose, core::Size chain1, core::Size chain2)
 
utility::vector1_bool calc_interface_vector (core::pose::Pose const &pose, core::Size const chain1_number, core::Size const chain2_number)
 
utility::vector1_bool calc_interface_vector (core::pose::Pose const &pose, core::Size const chain1_number, core::Size const chain2_number, core::Real const CB_dist_cutoff, core::Real const nearby_atom_cutoff, core::Real const vector_angle_cutoff, core::Real const vector_dist_cutoff)
 
utility::vector1_bool calc_interface_vector (core::pose::Pose const &pose, int const interface_jump, core::Real const CB_dist_cutoff, core::Real const nearby_atom_cutoff, core::Real const vector_angle_cutoff, core::Real const vector_dist_cutoff)
 
utility::vector1_bool calc_interface_vector (core::pose::Pose const &pose, int const interface_jump)
 
utility::vector1_bool calc_interacting_vector (core::pose::Pose const &pose, std::set< core::Size > const &part1res, std::set< core::Size > const &part2res, core::Real const CB_dist_cutoff, core::Real const nearby_atom_cutoff, core::Real const vector_angle_cutoff, core::Real const vector_dist_cutoff)
 calculate the same thing but don't require an interface More...
 

Typedef Documentation

using core::select::util::HTReal = typedef numeric::HomogeneousTransform<core::Real>
typedef std::pair< std::set<core::Size>,std::set<core::Size> > core::select::util::InterfacePair
typedef utility::pointer::shared_ptr< SelectResiduesByLayer const > core::select::util::SelectResiduesByLayerCOP
typedef utility::pointer::shared_ptr< SelectResiduesByLayer > core::select::util::SelectResiduesByLayerOP

Function Documentation

bool core::select::util::any_atoms_within_cutoff ( core::conformation::Residue res1,
core::conformation::Residue res2,
core::Real  cutoff 
)

find nearby atoms to other in interface

looks are residue 1 and sees if any of the side chain atoms are within the cutoff distance to residue 2

References core::conformation::Residue::atom_begin(), core::chemical::ResidueType::has(), core::conformation::Residue::heavyAtoms_end(), select_coord_for_residue(), core::conformation::Residue::sidechainAtoms_begin(), and core::conformation::Residue::type().

Referenced by find_interface_pointing_residues_from_neighbs().

utility::vector1_bool core::select::util::calc_interacting_vector ( core::pose::Pose const &  pose,
std::set< core::Size > const &  part1res,
std::set< core::Size > const &  part2res,
core::Real const  CB_dist_cutoff,
core::Real const  nearby_atom_cutoff,
core::Real const  vector_angle_cutoff,
core::Real const  vector_dist_cutoff 
)
utility::vector1_bool core::select::util::calc_interface_vector ( core::pose::Pose const &  pose,
core::Size const  chain1_number,
core::Size const  chain2_number 
)

minimal chain number definition

Calculates the residues at an interface between two protein chains or jump. The calculation is done in the following manner. First the point graph is used to find all residues within some big cutoff of residues on the other chain. For these residues near the interface, two metrics are used to decide if they are actually possible interface residues. The first metric is to iterate through all the side chain atoms in the residue of interest and check to see if their distance is less than the nearby atom cutoff, if so then they are an interface residue. If a residue does not pass that check, then two vectors are drawn, a CA-CB vector and a vector from CB to a CB atom on the neighboring chain. The dot product between these two vectors is then found and if the angle between them is less than some cutoff then they are classified as interface.

minimal chain number definition

Referenced by protocols::task_operations::RestrictToInterfaceVectorOperation::apply(), and calc_interface_vector().

utility::vector1_bool core::select::util::calc_interface_vector ( core::pose::Pose const &  pose,
core::Size const  chain1_number,
core::Size const  chain2_number,
core::Real const  CB_dist_cutoff,
core::Real const  nearby_atom_cutoff,
core::Real const  vector_angle_cutoff,
core::Real const  vector_dist_cutoff 
)
utility::vector1_bool core::select::util::calc_interface_vector ( core::pose::Pose const &  pose,
int const  interface_jump,
core::Real const  CB_dist_cutoff,
core::Real const  nearby_atom_cutoff,
core::Real const  vector_angle_cutoff,
core::Real const  vector_dist_cutoff 
)
utility::vector1_bool core::select::util::calc_interface_vector ( core::pose::Pose const &  pose,
int const  interface_jump 
)

minimal jump runner

References calc_interface_vector().

core::Real core::select::util::calculate_point_in_cone ( numeric::xyzVector< core::Real > const &  point_coordinates,
numeric::xyzVector< core::Real > const &  conevect,
numeric::xyzVector< core::Real > const &  conevect_coordinate_2,
core::Real const  angle_exponent,
core::Real const  angle_shift_factor,
core::Real const  dist_exponent,
core::Real const  dist_midpoint 
)
inline

Given a point in 3D space, and a vector and floats defining a cone, determine the extent to which the point is in the cone.

The return value ranges from 0 (not in the cone) to 1 (fully in the cone). The cone has fuzzy boundaries, so non-integer return values are possible.

Parameters
[in]point_coordinatesThe coordinates of a test point that may or may not be in the cone. For the layer selector, this is the beta- or alpha-carbon of another residue.
[in]conevectA vector defining the direction in which the test cone opens. For the layer selector, this is the CA-CB vector of an amino acid.
[in]conevect_coordinate_2The coordinate in space of the base of the cone. For the layer selector, this is the CB atom.
[in]angle_exponentA value defining how rapidly the cone falls off in the angular direction.
[in]angle_shift_factorA value that shifts the angluar falloff.
[in]dist_exponentA value defining how rapidly the cone falls off with distance.
[in]dist_midpointA value defining the midpoint of the distance falloff.

Referenced by core::select::util::SelectResiduesByLayer::calc_sc_neighbors(), and determine_whether_point_is_buried().

numeric::xyzVector< core::Real > core::select::util::cbeta_vector ( core::conformation::Residue res)

the Cbeta vector(s) from on rsd to another

find the Cbeta vector(s) from one residue to another, returns the normalized vector needed

References core::conformation::Residue::atom(), core::conformation::Residue::has(), select_coord_for_residue(), and core::conformation::Atom::xyz().

Referenced by res1_pointed_at_res2().

bool core::select::util::determine_whether_point_is_buried ( numeric::xyzVector< core::Real > const &  point_coordinates,
core::pose::Pose const &  pose,
core::Real const  angle_exponent,
core::Real const  angle_shift_factor,
core::Real const  dist_exponent,
core::Real const  dist_midpoint,
core::Real const  burial_threshold 
)

Given a point in 3D space, determine whether or not that point is buried by the method of sidechain neighbor cones.

Note
A crude distance cutoff metric is also used to make this calculation more efficient.

Returns true for burial, false otherwise. Updated 1 March 2019 to ignore ligands.

Parameters
[in]point_coordinatesThe 3D coordinates of the point in space.
[in]poseThe pose, for reference.
[in]angle_exponentA value defining how rapidly the cone falls off in the angular direction.
[in]angle_shift_factorA value that shifts the angluar falloff.
[in]dist_exponentA value defining how rapidly the cone falls off with distance.
[in]dist_midpointA value defining the midpoint of the distance falloff.
[in]burial_thresholdThe cutoff for considering a point to be buried. Roughly, this is the number of cones that the point must be inside in order to consider it "buried".
Note
A crude distance cutoff metric is also used to make this calculation more efficient.

Returns true for burial, false otherwise.

Parameters
[in]point_coordinatesThe 3D coordinates of the point in space.
[in]poseThe pose, for reference.
[in]angle_exponentA value defining how rapidly the cone falls off in the angular direction.
[in]angle_shift_factorA value that shifts the angluar falloff.
[in]dist_exponentA value defining how rapidly the cone falls off with distance.
[in]dist_midpointA value defining the midpoint of the distance falloff.
[in]burial_thresholdThe cutoff for considering a point to be buried. Roughly, this is the number of cones that the point must be inside in order to consider it "buried".

References core::chemical::aa_gly, calculate_point_in_cone(), NFOLD_REDUCTION, core::pose::Pose::residue_type(), core::pose::Pose::total_residue(), and core::pose::Pose::xyz().

Referenced by core::pack::guidance_scoreterms::buried_unsat_penalty::graph::BuriedUnsatPenaltyNode::is_buried().

void core::select::util::fill_in_chain_terminii ( core::pose::Pose const &  pose,
core::Size  chain1,
core::Size  chain2 
)
void core::select::util::find_interface_pointing_residues_from_neighbs ( core::pose::Pose const &  pose,
InterfacePair const &  interface_pairs,
core::Real const  nearby_atom_cutoff,
core::Real const  vector_angle_cutoff,
core::Real const  vector_dist_cutoff,
utility::vector1_bool &  interface_residues 
)

looks at the big set and figures out what is actually pointing towards the interface

does the real work, looks at the big set and figures out what is actually pointing towards the interface sets a vector bool value to true if a residue is at the interface

References any_atoms_within_cutoff(), res1_pointed_at_res2(), and core::pose::Pose::residue().

Referenced by calc_interacting_vector(), and calc_interface_vector().

InterfacePair core::select::util::find_jump_partners_within_CB_cutoff ( core::pose::Pose const &  pose,
core::Real  big_cutoff,
int  jump_num 
)

find neighbors to look for vectors within using a big cutoff for CBs

find neighbors to look for vectors within using a big cutoff for CBs

References core::pose::Pose::conformation(), core::pose::Pose::fold_tree(), core::kinematics::FoldTree::partition_by_jump(), core::conformation::residue_point_graph_from_conformation(), and core::pose::Pose::size().

Referenced by calc_interface_vector().

InterfacePair core::select::util::find_neighbors_within_CB_cutoff ( core::pose::Pose const &  pose,
core::Real  big_cutoff,
core::Size  chain1,
core::Size  chain2 
)

neighbors to look for vectors within (big set here)

find based on chains neighbors to look for vectors within using a big cutoff for CBs

References core::conformation::Conformation::chain_begin(), core::conformation::Conformation::chain_end(), core::pose::Pose::conformation(), and core::conformation::residue_point_graph_from_conformation().

Referenced by calc_interface_vector().

bool core::select::util::res1_pointed_at_res2 ( core::conformation::Residue res1,
core::conformation::Residue res2,
core::Real  angle_cutoff,
core::Real  dist_cutoff 
)

out if res1 and res2 are pointing at eachother

figures out if res1 and res2 are pointing at eachother

the angle is the max angle between the two residues, dist_cutoff is how far the coords are from eachother

References cbeta_vector(), and select_coord_for_residue().

Referenced by find_interface_pointing_residues_from_neighbs().

numeric::xyzVector< core::Real > core::select::util::select_coord_for_residue ( core::conformation::Residue res)