Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::scoring::nmr::NMRSpinlabel Class Reference

#include <NMRSpinlabel.hh>

Inheritance diagram for core::scoring::nmr::NMRSpinlabel:
Inheritance graph
[legend]

Public Types

enum  CONFORMER_FILTER { DISTANCE = 1, BUMP_ENERGY = 2 }
 type of spinlabel conformer filtering DISTANCE = measure the distance of spinlabel side chain heavy atoms to the NBR_ATOM in every neighborhood residue in the spinlabel environment and count how many atoms are within the NBR_RADIUS BUMP_ENERGY = filter based on packer energy of a spinlabel conformer with all neighboring residues and keep conformers with energy lower than bump energy threshold More...
 
typedef
core::chemical::ResidueTypeOP 
ResidueTypeOP
 
typedef
core::chemical::ResidueTypeCOP 
ResidueTypeCOP
 
typedef utility::vector1
< std::pair< Real, Vector > > 
WeightCoordVector
 

Public Member Functions

 NMRSpinlabel (std::string const &residue_type_set, std::string const &residue_type)
 construct from strings of residue type set and residue type; the other properties (e.g. radical atom) are looked up in the database More...
 
 NMRSpinlabel (ResidueTypeCOP residue_type, std::string const &radical_atom, NMRDummySpinlabelEnsembleCOP dummy_ensemble)
 construct from ResidueType, radical atom name and NMRDummySpinlabelEnsemble More...
 
 NMRSpinlabel (NMRSpinlabel const &other)
 copy constructor More...
 
NMRSpinlabeloperator= (NMRSpinlabel const &rhs)
 assignment operator More...
 
 ~NMRSpinlabel () override
 destructor More...
 
std::string get_name () const
 Getters. More...
 
std::string get_code () const
 
ResidueTypeCOP get_residue_type () const
 
std::string get_radical_atom () const
 
std::string get_distance_potential_histogram_file () const
 
NMRDummySpinlabelEnsembleCOP get_dummy_ensemble () const
 
NMRDummySpinlabelEnsembleOP get_dummy_ensemble ()
 
WeightCoordVector const & get_radical_atom_coordinates () const
 
Size get_max_ensemble_size () const
 
Size get_current_ensemble_size () const
 
void set_highres_conformer_filter_type (std::string const &filter_type)
 
CONFORMER_FILTER get_highres_conformer_filter_type () const
 
Real get_boltzman_factor () const
 
void set_boltzmann_factor (Real const kt)
 
void set_path_to_distance_potential_histogram_file (std::string const &filename)
 
WeightCoordVector filter_spinlabel_ensemble_by_distance_check (pose::Pose const &pose, Size const &target_resid)
 filter dummy spinlabel ensemble given the neighborhood of a particular target residue in the pose. Return a vector of each spinlabel conformer's weight and radical atom coordinates. Performs also clustering of coordinates internally such that the vector size does not exceed the maximal number of spinlabel conformers. More...
 
WeightCoordVector filter_spinlabel_ensemble_by_mask (pose::Pose const &pose, Size const &target_resid, utility::vector1< bool > const &mask, utility::vector1< Real > const &scores)
 filter dummy ensemble and keep those spinlabels provided in boolean mask More...
 
void show (std::ostream &TR)
 

Private Member Functions

 NMRSpinlabel ()
 default constructor More...
 
void init_spinlabel_name ()
 
void convert_string_to_conformer_filter_type (std::string const &filter_type)
 utility function to convert string to class specific enum More...
 
void cluster_conformers_and_set_weights_and_coordinates (WeightCoordVector &weights_coords, utility::vector1< utility::vector1< Real >> &rmsd_mat)
 Performs clustering of the spinlabel coordinates vector before setting the class member. The input vector doesn't store all spinlabel atoms but only the coordinates of the radical atom. Clustering is done based on input RMSD matrix. More...
 
void set_weights_and_coordinates (WeightCoordVector const &weights_coords)
 
void init_radical_atom_weights_and_coordinates ()
 
void register_options ()
 register command line options More...
 
void init_from_cml ()
 

Private Attributes

std::string name_
 
std::string three_letter_code_
 
ResidueTypeCOP residue_type_
 
std::string radical_atom_
 
std::string distance_potential_histogram_file_
 
NMRDummySpinlabelEnsembleOP dummy_ensemble_
 
WeightCoordVector weights_coordinates_table_
 
Size max_ensemble_size_
 
CONFORMER_FILTER highres_conformer_filter_type_
 
Real boltzmann_factor_
 

Member Typedef Documentation

typedef utility::vector1< std::pair< Real, Vector > > core::scoring::nmr::NMRSpinlabel::WeightCoordVector

Member Enumeration Documentation

type of spinlabel conformer filtering DISTANCE = measure the distance of spinlabel side chain heavy atoms to the NBR_ATOM in every neighborhood residue in the spinlabel environment and count how many atoms are within the NBR_RADIUS BUMP_ENERGY = filter based on packer energy of a spinlabel conformer with all neighboring residues and keep conformers with energy lower than bump energy threshold

Enumerator
DISTANCE 
BUMP_ENERGY 

Constructor & Destructor Documentation

core::scoring::nmr::NMRSpinlabel::NMRSpinlabel ( std::string const &  residue_type_set,
std::string const &  residue_type 
)

construct from strings of residue type set and residue type; the other properties (e.g. radical atom) are looked up in the database

References distance_potential_histogram_file_, dummy_ensemble_, init_from_cml(), init_radical_atom_weights_and_coordinates(), init_spinlabel_name(), radical_atom_, register_options(), and residue_type_.

core::scoring::nmr::NMRSpinlabel::NMRSpinlabel ( chemical::ResidueTypeCOP  residue_type,
std::string const &  radical_atom,
NMRDummySpinlabelEnsembleCOP  dummy_ensemble 
)
core::scoring::nmr::NMRSpinlabel::NMRSpinlabel ( NMRSpinlabel const &  other)

copy constructor

References init_spinlabel_name().

core::scoring::nmr::NMRSpinlabel::~NMRSpinlabel ( )
override

destructor

core::scoring::nmr::NMRSpinlabel::NMRSpinlabel ( )
private

default constructor

Member Function Documentation

void core::scoring::nmr::NMRSpinlabel::cluster_conformers_and_set_weights_and_coordinates ( WeightCoordVector weights_coords,
utility::vector1< utility::vector1< Real >> &  rmsd_mat 
)
private

Performs clustering of the spinlabel coordinates vector before setting the class member. The input vector doesn't store all spinlabel atoms but only the coordinates of the radical atom. Clustering is done based on input RMSD matrix.

References core::conformation::membrane::center, protocols::mean_field::max(), max_ensemble_size_, and core::scoring::nmr::TR().

Referenced by filter_spinlabel_ensemble_by_distance_check(), and filter_spinlabel_ensemble_by_mask().

void core::scoring::nmr::NMRSpinlabel::convert_string_to_conformer_filter_type ( std::string const &  filter_type)
private

utility function to convert string to class specific enum

References BUMP_ENERGY, DISTANCE, highres_conformer_filter_type_, and protocols::kinmatch::str().

Referenced by init_from_cml(), and set_highres_conformer_filter_type().

NMRSpinlabel::WeightCoordVector core::scoring::nmr::NMRSpinlabel::filter_spinlabel_ensemble_by_distance_check ( pose::Pose const &  pose,
Size const &  target_resid 
)

filter dummy spinlabel ensemble given the neighborhood of a particular target residue in the pose. Return a vector of each spinlabel conformer's weight and radical atom coordinates. Performs also clustering of coordinates internally such that the vector size does not exceed the maximal number of spinlabel conformers.

These are the two functions through which the user interfaces with the class to create an ensemble of valid spinlabel conformers (i.e. those that are expected to be seen given the current environment). In the first function, a simple distance check is performed and conformers that have heavy atoms within the NBR_RADIUS of other residues are marked as clashing. In the second function, the user provides a boolean mask for spinlabels which should be kept.

References cluster_conformers_and_set_weights_and_coordinates(), dummy_ensemble_, max_ensemble_size_, radical_atom_, residue_type_, set_weights_and_coordinates(), and core::scoring::nmr::TR().

NMRSpinlabel::WeightCoordVector core::scoring::nmr::NMRSpinlabel::filter_spinlabel_ensemble_by_mask ( pose::Pose const &  pose,
Size const &  target_resid,
utility::vector1< bool > const &  mask,
utility::vector1< Real > const &  scores 
)
Real core::scoring::nmr::NMRSpinlabel::get_boltzman_factor ( ) const
inline

References boltzmann_factor_.

std::string core::scoring::nmr::NMRSpinlabel::get_code ( ) const
inline
Size core::scoring::nmr::NMRSpinlabel::get_current_ensemble_size ( ) const
inline
std::string core::scoring::nmr::NMRSpinlabel::get_distance_potential_histogram_file ( ) const
inline
NMRDummySpinlabelEnsembleCOP core::scoring::nmr::NMRSpinlabel::get_dummy_ensemble ( ) const
inline
NMRDummySpinlabelEnsembleOP core::scoring::nmr::NMRSpinlabel::get_dummy_ensemble ( )
inline

References dummy_ensemble_.

CONFORMER_FILTER core::scoring::nmr::NMRSpinlabel::get_highres_conformer_filter_type ( ) const
inline
Size core::scoring::nmr::NMRSpinlabel::get_max_ensemble_size ( ) const
inline

References max_ensemble_size_.

std::string core::scoring::nmr::NMRSpinlabel::get_name ( ) const
inline

Getters.

References name_.

std::string core::scoring::nmr::NMRSpinlabel::get_radical_atom ( ) const
inline

References radical_atom_.

WeightCoordVector const& core::scoring::nmr::NMRSpinlabel::get_radical_atom_coordinates ( ) const
inline
ResidueTypeCOP core::scoring::nmr::NMRSpinlabel::get_residue_type ( ) const
inline

References residue_type_.

void core::scoring::nmr::NMRSpinlabel::init_from_cml ( )
private
void core::scoring::nmr::NMRSpinlabel::init_radical_atom_weights_and_coordinates ( )
private
void core::scoring::nmr::NMRSpinlabel::init_spinlabel_name ( )
private

References name_, residue_type_, and three_letter_code_.

Referenced by NMRSpinlabel(), and operator=().

NMRSpinlabel & core::scoring::nmr::NMRSpinlabel::operator= ( NMRSpinlabel const &  rhs)
void core::scoring::nmr::NMRSpinlabel::register_options ( )
private

register command line options

Referenced by NMRSpinlabel().

void core::scoring::nmr::NMRSpinlabel::set_boltzmann_factor ( Real const  kt)
inline

References boltzmann_factor_.

void core::scoring::nmr::NMRSpinlabel::set_highres_conformer_filter_type ( std::string const &  filter_type)
void core::scoring::nmr::NMRSpinlabel::set_path_to_distance_potential_histogram_file ( std::string const &  filename)
inline
void core::scoring::nmr::NMRSpinlabel::set_weights_and_coordinates ( WeightCoordVector const &  weights_coords)
private
void core::scoring::nmr::NMRSpinlabel::show ( std::ostream &  TR)

Member Data Documentation

Real core::scoring::nmr::NMRSpinlabel::boltzmann_factor_
private
std::string core::scoring::nmr::NMRSpinlabel::distance_potential_histogram_file_
private
NMRDummySpinlabelEnsembleOP core::scoring::nmr::NMRSpinlabel::dummy_ensemble_
private
CONFORMER_FILTER core::scoring::nmr::NMRSpinlabel::highres_conformer_filter_type_
private
Size core::scoring::nmr::NMRSpinlabel::max_ensemble_size_
private
std::string core::scoring::nmr::NMRSpinlabel::name_
private

Referenced by get_name(), init_spinlabel_name(), and show().

std::string core::scoring::nmr::NMRSpinlabel::radical_atom_
private
ResidueTypeCOP core::scoring::nmr::NMRSpinlabel::residue_type_
private
std::string core::scoring::nmr::NMRSpinlabel::three_letter_code_
private

Referenced by get_code(), init_spinlabel_name(), and show().

WeightCoordVector core::scoring::nmr::NMRSpinlabel::weights_coordinates_table_
private

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