Rosetta
|
#include <SingleResidueCenrotLibrary.hh>
Public Types | |
typedef chemical::AA | AA |
Public Member Functions | |
SingleResidueCenrotLibrary (AA const aa) | |
~SingleResidueCenrotLibrary () override | |
AA | aa () const |
std::string | read_from_file (utility::io::izstream &infile, bool first_line_three_letter_code_already_read) |
const utility::vector1< CentroidRotamerSampleData > | get_rotamer_samples (conformation::Residue const &rsd) const |
Real | rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, core::pack::rotamers::TorsionEnergy &tenergy) const override |
Virtual functions required by the base classes. More... | |
void | rotamer_energy_deriv (conformation::Residue const &rsd, pose::Pose const &pose, id::TorsionID const &tor_id, core::pack::rotamers::TorsionEnergy &tderiv) const override |
std::set< id::PartialAtomID > | atoms_w_dof_derivatives (conformation::Residue const &rsd, pose::Pose const &pose) const override |
Return the set of atoms ids (or, if they come from another residue, PartialAtomIDs) for the set of atoms that are used in defining the DOF derivatives for a particular residue. More... | |
Real | eval_rotameric_energy_deriv (conformation::Residue const &rsd, Real4 &dis_ang_dih, bool eval_deriv) const |
Real | eval_rotameric_energy_bb_dof_deriv (conformation::Residue const &rsd, id::TorsionID const &tor_id) const |
Real | best_rotamer_energy (conformation::Residue const &rsd, pose::Pose const &pose, bool curr_rotamer_only) const override |
Returns the energy of the lowest-energy rotamer accessible to the given residue (based on e.g. its current phi and psi values). If curr_rotamer_only is true, then consider only the idealized version of the residue's current rotamer (local optimum); otherwise, consider all rotamers (global optimum). More... | |
void | assign_random_rotamer_with_bias (conformation::Residue const &rsd, pose::Pose const &pose, numeric::random::RandomGenerator &RG, ChiVector &new_chi_angles, bool perturb_from_rotamer_center) const override |
Pick a rotamer for the input residue according to the rotamer probability distribution and assign chi angles to the input rsd. – currently no perturbation allowed. More... | |
void | fill_rotamer_vector (pose::Pose const &pose, scoring::ScoreFunction const &scorefxn, pack::task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue, utility::vector1< utility::vector1< Real > > const &extra_chi_steps, bool buried, rotamers::RotamerVector &rotamers) const override |
void | write_to_file (utility::io::ozstream &out) const override |
CentroidRotamerSampleData const & | get_closest_rotamer (conformation::Residue const &rsd, Size &nrot, Real &dis) const |
![]() | |
SingleResidueRotamerLibrary () | |
~SingleResidueRotamerLibrary () override | |
virtual utility::vector1< utility::vector1< core::Real > > | compute_proton_chi_samplings (chemical::ResidueType const &concrete_residue, pack::task::ResidueLevelTask const &rlt, bool buried) const |
Return a vector (indexed by proton_chi number) of vectors of dihedral values to use in proton chi sampling. More... | |
virtual utility::vector1< dunbrack::ChiSetOP > | expand_proton_chis (utility::vector1< utility::vector1< core::Real > > const &sampling, chemical::ResidueType const &concrete_residue, core::Size max_rotamers=5000) const |
Given a vector of vectors of dihedrals to sample on proton chis, Will create the ChiSet vector combinitorially on those chi values (Note: The ChiSets are only valid/defined over the proton chis.) More... | |
virtual void | bump_filter (RotamerVector &rotamers, core::Size resid, scoring::ScoreFunction const &sf, pose::Pose const &pose, task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph) const |
Filter a RotamerVector by "bump energy" of a rotamer: All rotamers with bump energies over a certain threshold will be discarded Exception: if all rotamers are over the threshold, one rotamer (with the lowest bump energy) will be reserved. The vector "rotamers" will be modified "in-place". More... | |
virtual core::PackerEnergy | bump_check (core::conformation::ResidueCOP rotamer, core::Size resid, scoring::ScoreFunction const &sf, pose::Pose const &pose, task::PackerTask const &task, utility::graph::GraphCOP packer_neighbor_graph) const |
Computes the "bump energy" of a rotamer: the bump energy is the sum of rotamer's interactions with 1) the backbone-and-side chains of neighboring residues that are held fixed during this repacking optimization and 2) the backbones of neighboring residues that are changable during this repacking optimization. More... | |
virtual core::Size | current_rotamer (RotamerVector &rotamers, core::Size resid, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Adds the current rotamer to rotamer vector, if the Rotlib supports it. More... | |
virtual void | emergency_rotamer (RotamerVector &rotamers, core::Size resid, pose::Pose const &pose, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Generate an "emergency rotamer" if we don't have any. More... | |
RotamerVector | virtual_sidechain (RotamerVector const &rotamers, core::Size resid, pose::Pose const &pose, task::PackerTask const &task, chemical::ResidueTypeCOP concrete_residue, conformation::Residue const &existing_residue) const |
Add a virtualized sidechain to the rotamer vector if settings call for it. More... | |
virtual bool | operator== (SingleResidueRotamerLibrary const &) const |
Equality test for equivalence. Two SingleResidueRotamerLibraries test equal if and only if they represent the exact same behavior. More... | |
Static Protected Attributes | |
static Size const | N_PHIPSI_BINS = 36 |
static Real const | PHIPSI_BINRANGE = 10.0 |
static Size const | RSD_PHI_INDEX = 1 |
static Size const | RSD_PSI_INDEX = 2 |
static Real const | NEUTRAL_PHI = -90 |
static Real const | NEUTRAL_PSI = 130 |
static Real const | MAX_ROT_ENERGY = 16 |
static Real const | MIN_ROT_PROB = 1e-6 |
Private Member Functions | |
void | get_phipsi_bins (Real phi, Real psi, Size &phibin, Size &psibin, Size &phibin_next, Size &psibin_next, Real &phi_alpha, Real &psi_alpha) const |
void | get_phipsi_bins (Real phi, Real psi, Size &phibin, Size &psibin) const |
Real | get_phi_from_rsd (conformation::Residue const &rsd) const |
Real | get_psi_from_rsd (conformation::Residue const &rsd) const |
void | verify_phipsi_bins (Real phi, Real psi, Size const phibin, Size const psibin, Size const phibin_next, Size const psibin_next) const |
void | bin_angle (Real const angle_start, Real const angle_step, Real const ASSERT_ONLY(angle_range), Size const nbins, Real const ang, Size &bin_lower, Size &bin_upper, Real &angle_alpha) const |
This is not the right place for this code, but the numeric interpolation library uselessly indexes by 0 and the basic functions aren't inlined... More... | |
void | setup_entropy_correction () |
E_ref is the same as shannon entropy. More... | |
Private Attributes | |
ObjexxFCL::FArray2D< utility::vector1< CentroidRotamerSampleData > > | all_rots_bb_ |
utility::vector1< CentroidRotamerSampleData > | dummy_sample_ |
AA | aa_ |
Size | max_rot_num |
Real | ref_energy_ |
ObjexxFCL::FArray2D< Real > | entropy_ |
core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::SingleResidueCenrotLibrary | ( | AA const | aa | ) |
References all_rots_bb_, entropy_, and N_PHIPSI_BINS.
|
overridedefault |
|
inline |
References aa_.
Referenced by read_from_file(), and verify_phipsi_bins().
|
overridevirtual |
Pick a rotamer for the input residue according to the rotamer probability distribution and assign chi angles to the input rsd. – currently no perturbation allowed.
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
References core::pack::dunbrack::cenrot::TR().
|
overridevirtual |
Return the set of atoms ids (or, if they come from another residue, PartialAtomIDs) for the set of atoms that are used in defining the DOF derivatives for a particular residue.
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
References core::conformation::insert_partial_atom_ids_for_mainchain_torsion(), RSD_PHI_INDEX, and RSD_PSI_INDEX.
|
overridevirtual |
Returns the energy of the lowest-energy rotamer accessible to the given residue (based on e.g. its current phi and psi values). If curr_rotamer_only is true, then consider only the idealized version of the residue's current rotamer (local optimum); otherwise, consider all rotamers (global optimum).
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
|
inlineprivate |
This is not the right place for this code, but the numeric interpolation library uselessly indexes by 0 and the basic functions aren't inlined...
Referenced by get_phipsi_bins().
Real core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::eval_rotameric_energy_bb_dof_deriv | ( | conformation::Residue const & | rsd, |
id::TorsionID const & | tor_id | ||
) | const |
References core::id::BB, core::pack::dunbrack::cenrot::CentroidRotamerSampleData::cal_delta_internal_coordinates(), core::pack::dunbrack::cenrot::CentroidRotamerSampleData::data_, core::pack::dunbrack::cenrot::CentroidRotamerSampleData::deriv_phi_, core::pack::dunbrack::cenrot::CentroidRotamerSampleData::deriv_psi_, core::pack::dunbrack::DUNBRACK_MAX_BBTOR, entropy_, get_phi_from_rsd(), get_phipsi_bins(), get_psi_from_rsd(), get_rotamer_samples(), MAX_ROT_ENERGY, max_rot_num, MIN_ROT_PROB, PHIPSI_BINRANGE, core::pack::dunbrack::cenrot::CentroidRotamerSampleData::prob(), RSD_PHI_INDEX, RSD_PSI_INDEX, core::id::TorsionID::torsion(), core::pack::dunbrack::cenrot::TR(), and core::id::TorsionID::type().
Real core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::eval_rotameric_energy_deriv | ( | conformation::Residue const & | rsd, |
Real4 & | dis_ang_dih, | ||
bool | eval_deriv | ||
) | const |
References entropy_, get_phi_from_rsd(), get_phipsi_bins(), get_psi_from_rsd(), get_rotamer_samples(), MAX_ROT_ENERGY, max_rot_num, MIN_ROT_PROB, core::conformation::Residue::name(), PHIPSI_BINRANGE, ref_energy_, core::pack::dunbrack::cenrot::CentroidRotamerSampleData::sd_ang(), core::pack::dunbrack::cenrot::CentroidRotamerSampleData::sd_dih(), core::pack::dunbrack::cenrot::CentroidRotamerSampleData::sd_dis(), core::conformation::Residue::seqpos(), and core::pack::dunbrack::cenrot::TR().
Referenced by rotamer_energy().
|
overridevirtual |
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
References core::pose::motif::a(), core::chemical::aa_ala, core::chemical::aa_gly, protocols::match::upstream::b, core::pose::Pose::conformation(), core::conformation::ResidueFactory::create_residue(), get_rotamer_samples(), core::kinematics::Stub::M, max_rot_num, MIN_ROT_PROB, core::pack::task::ResidueLevelTask::preserve_c_beta(), core::pack::task::PackerTask::residue_task(), core::conformation::Residue::seqpos(), and core::kinematics::Stub::v.
CentroidRotamerSampleData const & core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::get_closest_rotamer | ( | conformation::Residue const & | rsd, |
Size & | nrot, | ||
Real & | dis | ||
) | const |
|
private |
|
private |
References get_phipsi_bins().
|
private |
References bin_angle(), N_PHIPSI_BINS, PHIPSI_BINRANGE, and verify_phipsi_bins().
Referenced by eval_rotameric_energy_bb_dof_deriv(), eval_rotameric_energy_deriv(), get_phipsi_bins(), get_rotamer_samples(), and read_from_file().
|
private |
const utility::vector1< CentroidRotamerSampleData > core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::get_rotamer_samples | ( | conformation::Residue const & | rsd | ) | const |
References all_rots_bb_, get_phi_from_rsd(), get_phipsi_bins(), get_psi_from_rsd(), max_rot_num, and PHIPSI_BINRANGE.
Referenced by eval_rotameric_energy_bb_dof_deriv(), eval_rotameric_energy_deriv(), fill_rotamer_vector(), and get_closest_rotamer().
std::string core::pack::dunbrack::cenrot::SingleResidueCenrotLibrary::read_from_file | ( | utility::io::izstream & | infile, |
bool | first_line_three_letter_code_already_read | ||
) |
|
overridevirtual |
Virtual functions required by the base classes.
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
References eval_rotameric_energy_deriv(), and core::pack::rotamers::TorsionEnergy::tot.
|
overridevirtual |
|
private |
E_ref is the same as shannon entropy.
References all_rots_bb_, entropy_, max_rot_num, N_PHIPSI_BINS, and core::scoring::packstat::old::nphi.
Referenced by read_from_file().
|
private |
References aa().
Referenced by get_phipsi_bins().
|
overridevirtual |
Implements core::pack::rotamers::SingleResidueRotamerLibrary.
References core::pack::dunbrack::cenrot::TR().
|
private |
Referenced by get_rotamer_samples(), read_from_file(), setup_entropy_correction(), and SingleResidueCenrotLibrary().
|
private |
Referenced by get_closest_rotamer(), and read_from_file().
|
private |
|
staticprotected |
Referenced by eval_rotameric_energy_bb_dof_deriv(), and eval_rotameric_energy_deriv().
|
private |
|
staticprotected |
Referenced by eval_rotameric_energy_bb_dof_deriv(), eval_rotameric_energy_deriv(), and fill_rotamer_vector().
|
staticprotected |
Referenced by get_phipsi_bins(), setup_entropy_correction(), and SingleResidueCenrotLibrary().
|
staticprotected |
Referenced by get_phi_from_rsd().
|
staticprotected |
Referenced by get_psi_from_rsd().
|
staticprotected |
|
private |
Referenced by eval_rotameric_energy_deriv(), and read_from_file().
|
staticprotected |
Referenced by atoms_w_dof_derivatives(), eval_rotameric_energy_bb_dof_deriv(), and get_phi_from_rsd().
|
staticprotected |
Referenced by atoms_w_dof_derivatives(), eval_rotameric_energy_bb_dof_deriv(), and get_psi_from_rsd().