Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::scoring::epr_deer::EPRSpinLabel Class Reference

#include <EPRSpinLabel.hh>

Public Member Functions

 EPRSpinLabel ()
 Constructor. More...
 
 ~EPRSpinLabel ()
 Destructor. More...
 
utility::vector1
< PseudoElectron > & 
operator[] (std::pair< Size, std::string > const &res)
 Operator to return electrons from specific residue. More...
 
utility::vector1
< PseudoElectron > const & 
at (std::pair< Size, std::string > const &res) const
 Allows const spin label data to be accessed. More...
 
std::map< Size, Realhistogram (utility::vector1< std::pair< Size, std::string > > const &residues, Size const &bins_per_a, Real const &modifer=0.0)
 Returns a histogram between all coordinates for all residues - assumes complete labeling. More...
 
std::map< Size, Realhistogram (std::pair< Size, std::string > const &res1, std::pair< Size, std::string > const &res2, Size const &bins_per_a, Real const &modifer=0.0, Real const &stdev=1.0)
 Returns a histogram between all coordinates between two residue/SL combinations. More...
 
Real gauss (Real const &dist, Real const &avg, Real const &stdev) const
 Return a value for a gaussian distribution at a particular value, given a average and standard deviation. More...
 
void label (Size const &res, std::string const &label, pose::Pose const &pose, bool const &skip_clash_eval=false)
 Label a residue with a certain spin label. More...
 
std::map< Size, Realnormalize_distribution (std::map< Size, Real > sim_map) const
 Normalize distribution so that the sum is equal to one. More...
 
utility::vector1< PseudoElectronget_coords (core::Size const &res, pose::Pose const &pose, utility::vector1< PseudoElectron > const &electrons, bool const &skip_clash_eval=false)
 Given a set of electrons, a pose, and a residue of interest, find viable coords. More...
 
Real get_weight (core::Size const &source_res, numeric::xyzVector< core::Real > const &center_of_mass, pose::Pose const &pose, Real const &forgive_factor)
 retrieve weight for given coordinate More...
 
Real cutoff () const
 Retrieve cuttof for weights (if the weight is less than this, it is set to zero) More...
 
void load_custom_electrons (std::map< Size, utility::vector1< PseudoElectron > > const &all_coords)
 Allows a custom set of electrons to be read without superimposition. More...
 

Private Member Functions

numeric::xyzVector< Realcenter_of_mass (numeric::xyzVector< Real > const &electron, numeric::xyzVector< Real > const &cb) const
 Returns the center of mass between a given electron coordinate and its CB. More...
 

Private Attributes

std::map< std::pair< Size,
std::string >
, utility::vector1
< PseudoElectron > > 
mapped_coords_
 
utility::vector1< PseudoElectroncustom_electrons_
 
std::map< Size,
utility::vector1
< PseudoElectron > > 
custom_coords_
 
Real cutoff_ = 0.001
 

Constructor & Destructor Documentation

core::scoring::epr_deer::EPRSpinLabel::EPRSpinLabel ( )

Constructor.

core::scoring::epr_deer::EPRSpinLabel::~EPRSpinLabel ( )

Destructor.

Member Function Documentation

utility::vector1< PseudoElectron > const & core::scoring::epr_deer::EPRSpinLabel::at ( std::pair< Size, std::string > const &  res) const

Allows const spin label data to be accessed.

References mapped_coords_.

numeric::xyzVector< Real > core::scoring::epr_deer::EPRSpinLabel::center_of_mass ( numeric::xyzVector< Real > const &  electron,
numeric::xyzVector< Real > const &  cb 
) const
private

Returns the center of mass between a given electron coordinate and its CB.

The precise value 0.875 descrbed the average value that is crystallographically observed in MTSSL rotamers for the distance between the CB and the electron vs the distance between the CB and the nitroxide ring center of mass, from which clashes are evaluated here. Described in detail in a forthcoming publication

Referenced by get_coords().

Real core::scoring::epr_deer::EPRSpinLabel::cutoff ( ) const

Retrieve cuttof for weights (if the weight is less than this, it is set to zero)

References cutoff_.

Real core::scoring::epr_deer::EPRSpinLabel::gauss ( Real const &  dist,
Real const &  avg,
Real const &  stdev 
) const

Return a value for a gaussian distribution at a particular value, given a average and standard deviation.

Referenced by histogram(), and core::scoring::epr_deer::DEERIO::read_gauss_lines().

utility::vector1< PseudoElectron > core::scoring::epr_deer::EPRSpinLabel::get_coords ( core::Size const &  res,
pose::Pose const &  pose,
utility::vector1< PseudoElectron > const &  electrons,
bool const &  skip_clash_eval = false 
)

Given a set of electrons, a pose, and a residue of interest, find viable coords.

References core::scoring::epr_deer::cb_coord_(), center_of_mass(), cutoff_, get_weight(), core::conformation::Residue::is_protein(), core::pose::Pose::residue(), and core::conformation::Residue::xyz().

Referenced by label().

Real core::scoring::epr_deer::EPRSpinLabel::get_weight ( core::Size const &  source_res,
numeric::xyzVector< core::Real > const &  center_of_mass,
pose::Pose const &  pose,
core::Real const &  forgive_factor 
)
std::map< Size, Real > core::scoring::epr_deer::EPRSpinLabel::histogram ( utility::vector1< std::pair< Size, std::string > > const &  residues,
Size const &  bins_per_a,
Real const &  modifer = 0.0 
)

Returns a histogram between all coordinates for all residues - assumes complete labeling.

References normalize_distribution().

Referenced by core::energy_methods::DEEREnergy::get_score().

std::map< Size, Real > core::scoring::epr_deer::EPRSpinLabel::histogram ( std::pair< Size, std::string > const &  res1,
std::pair< Size, std::string > const &  res2,
Size const &  bins_per_a,
Real const &  modifer = 0.0,
Real const &  stdev = 1.0 
)

Returns a histogram between all coordinates between two residue/SL combinations.

References gauss(), mapped_coords_, protocols::mean_field::max(), protocols::noesy_assign::round(), and core::scoring::epr_deer::TR().

void core::scoring::epr_deer::EPRSpinLabel::label ( Size const &  res,
std::string const &  label,
pose::Pose const &  pose,
bool const &  skip_clash_eval = false 
)
void core::scoring::epr_deer::EPRSpinLabel::load_custom_electrons ( std::map< Size, utility::vector1< PseudoElectron > > const &  all_coords)

Allows a custom set of electrons to be read without superimposition.

References custom_coords_.

Referenced by core::scoring::epr_deer::DEERIO::pull_coords().

std::map< Size, Real > core::scoring::epr_deer::EPRSpinLabel::normalize_distribution ( std::map< Size, Real sim_map) const

Normalize distribution so that the sum is equal to one.

References protocols::mean_field::max(), and core::scoring::epr_deer::TR().

Referenced by histogram().

utility::vector1< PseudoElectron > & core::scoring::epr_deer::EPRSpinLabel::operator[] ( std::pair< Size, std::string > const &  res)

Operator to return electrons from specific residue.

References mapped_coords_.

Member Data Documentation

std::map< Size, utility::vector1< PseudoElectron > > core::scoring::epr_deer::EPRSpinLabel::custom_coords_
private

Referenced by label(), and load_custom_electrons().

utility::vector1< PseudoElectron > core::scoring::epr_deer::EPRSpinLabel::custom_electrons_
private
Real core::scoring::epr_deer::EPRSpinLabel::cutoff_ = 0.001
private

Referenced by cutoff(), get_coords(), and get_weight().

std::map< std::pair< Size, std::string >, utility::vector1< PseudoElectron > > core::scoring::epr_deer::EPRSpinLabel::mapped_coords_
private

Referenced by at(), histogram(), label(), and operator[]().


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