Rosetta 3.4
|
class for non-discrete side chain sampling using Dunbrack rotamer probabilities/distributions More...
#include <SidechainMoverBase.hh>
Public Types | |
typedef utility::vector1 < core::Real > | ChiVector |
Public Member Functions | |
SidechainMoverBase () | |
default constructor | |
SidechainMoverBase (core::pack::dunbrack::RotamerLibrary const &rotamer_library) | |
constructor with user provided rotamer library | |
SidechainMoverBase (SidechainMoverBase const &mover) | |
~SidechainMoverBase () | |
virtual void | parse_my_tag (utility::tag::TagPtr const tag, protocols::moves::DataMap &data, protocols::filters::Filters_map const &filters, protocols::moves::Movers_map const &movers, core::pose::Pose const &pose) |
Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. | |
void | init_task (core::pose::Pose const &pose) |
initialize the packer task if necessary | |
virtual void | initialize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover, core::Size cycle) |
callback executed before any Monte Carlo trials | |
virtual core::conformation::ResidueOP | make_move (core::conformation::ResidueOP res) |
virtual void | make_chi_move (core::conformation::Residue const &residue, ChiVector const &old_chi, ChiVector &new_chi)=0 |
virtual core::Size | suggest_residue_number (core::pose::Pose const &) const |
virtual void | apply (core::pose::Pose &pose) |
apply a sidechain move to a Pose object | |
virtual std::string | get_name () const |
Each derived class must specify its name. The class name. | |
virtual core::Real | compute_proposal_density (core::conformation::Residue const &new_residue, core::Size const resnum, core::chemical::ResidueType const &old_res_type, ChiVector const &old_chi) const =0 |
all angles in degree | |
void | idealize_sidechains (core::pose::Pose &pose) |
idealize sidechains that might be altered | |
core::pack::dunbrack::RotamerLibrary const & | rotamer_library () const |
get the rotamer library | |
core::pack::task::TaskFactoryCOP | task_factory () const |
get the task factory | |
void | set_task_factory (core::pack::task::TaskFactoryCOP task_factory) |
set the task factory | |
core::pack::task::PackerTaskCOP | task () const |
get the packer task | |
void | set_task (core::pack::task::PackerTaskCOP task) |
set the task | |
bool | preserve_detailed_balance () const |
get whether detailed balance is preserved (i.e. proposal density ratio calculated) | |
void | set_preserve_detailed_balance (bool setting) |
set whether detailed balance is preserved (i.e. proposal density ratio calculated) | |
bool | change_chi_without_replacing_residue () const |
perform direct chi manipulations rather than using replace_residue to effect rotamer changes; useful if things are kinematically dependent on a sidechain. | |
void | set_change_chi_without_replacing_residue (bool setting) |
perform direct chi manipulations rather than using replace_residue to effect rotamer changes; useful if things are kinematically dependent on a sidechain. | |
virtual bool | have_mutated_residue () const |
return true if your last move has mutated residue --- make sure the residue is replaced entirely | |
virtual utility::vector1 < core::id::TorsionID_Range > | torsion_id_ranges (core::pose::Pose &pose) |
get the TorsionIDs perturbed by the mover during moves, along with their ranges | |
virtual utility::vector1 < core::id::DOF_ID_Range > | dof_id_ranges (core::pose::Pose &pose) |
get the DOF_IDs perturbed by the mover during moves, along with their ranges | |
utility::vector1< core::Size > const & | packed_residues () const |
get the residues that can be changed by this mover | |
utility::vector1< bool > const & | residue_packed () const |
get a vector indicating whether each residue can be packed | |
virtual core::Real | last_proposal_density_ratio () |
get the ratio of proposal densities for the last move |
class for non-discrete side chain sampling using Dunbrack rotamer probabilities/distributions
typedef utility::vector1< core::Real > protocols::simple_moves::sidechain_moves::SidechainMoverBase::ChiVector |
protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase | ( | ) |
default constructor
protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase | ( | core::pack::dunbrack::RotamerLibrary const & | rotamer_library | ) |
constructor with user provided rotamer library
protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase | ( | SidechainMoverBase const & | mover | ) |
protocols::simple_moves::sidechain_moves::SidechainMoverBase::~SidechainMoverBase | ( | ) |
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::apply | ( | core::pose::Pose & | pose | ) | [virtual] |
apply a sidechain move to a Pose object
Implements protocols::moves::Mover.
References change_chi_without_replacing_residue(), have_mutated_residue(), init_task(), make_move(), core::pose::Pose::replace_residue(), core::pose::Pose::residue(), core::pose::Pose::set_chi(), and suggest_residue_number().
bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::change_chi_without_replacing_residue | ( | ) | const |
perform direct chi manipulations rather than using replace_residue to effect rotamer changes; useful if things are kinematically dependent on a sidechain.
Referenced by apply(), parse_my_tag(), and set_change_chi_without_replacing_residue().
Real protocols::simple_moves::sidechain_moves::JumpRotamerSidechainMover::compute_proposal_density | ( | core::conformation::Residue const & | new_residue, |
core::Size const | resnum, | ||
core::chemical::ResidueType const & | old_res_type, | ||
ChiVector const & | old_chi | ||
) | const [pure virtual] |
all angles in degree
Implemented in protocols::simple_moves::sidechain_moves::JumpRotamerSidechainMover, protocols::simple_moves::sidechain_moves::PerturbChiSidechainMover, and protocols::simple_moves::sidechain_moves::PerturbRotamerSidechainMover.
References protocols::simple_moves::sidechain_moves::PerturbRotamerSidechainMover::build_rotamer_list(), core::conformation::Residue::chi(), and protocols::simple_moves::sidechain_moves::JumpRotamerSidechainMover::compute_rotdensities().
Referenced by make_move().
utility::vector1< id::DOF_ID_Range > protocols::simple_moves::sidechain_moves::SidechainMoverBase::dof_id_ranges | ( | core::pose::Pose & | pose | ) | [virtual] |
get the DOF_IDs perturbed by the mover during moves, along with their ranges
Reimplemented from protocols::canonical_sampling::ThermodynamicMover.
References core::id::CHI, core::pose::Pose::conformation(), core::conformation::Conformation::dof_id_from_torsion_id(), init_task(), core::chemical::ResidueType::name3(), core::chemical::ResidueType::nchi(), and core::pose::Pose::residue_type().
std::string protocols::simple_moves::sidechain_moves::SidechainMoverBase::get_name | ( | ) | const [virtual] |
Each derived class must specify its name. The class name.
Implements protocols::moves::Mover.
Reimplemented in protocols::simple_moves::sidechain_moves::JumpRotamerSidechainMover, protocols::simple_moves::sidechain_moves::PerturbChiSidechainMover, and protocols::simple_moves::sidechain_moves::PerturbRotamerSidechainMover.
virtual bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::have_mutated_residue | ( | ) | const [inline, virtual] |
return true if your last move has mutated residue --- make sure the residue is replaced entirely
Referenced by apply().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::idealize_sidechains | ( | core::pose::Pose & | pose | ) |
idealize sidechains that might be altered
References core::chemical::aa_pro, core::pose::Pose::chi(), core::pose::Pose::conformation(), core::conformation::ResidueFactory::create_residue(), init_task(), core::pose::Pose::replace_residue(), core::pose::Pose::residue(), core::pose::Pose::residue_type(), and core::pose::Pose::set_chi().
Referenced by initialize_simulation().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::init_task | ( | core::pose::Pose const & | pose | ) |
initialize the packer task if necessary
References set_task(), and core::pose::Pose::total_residue().
Referenced by apply(), dof_id_ranges(), idealize_sidechains(), and initialize_simulation().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::initialize_simulation | ( | core::pose::Pose & | pose, |
protocols::canonical_sampling::MetropolisHastingsMover const & | metropolis_hastings_mover, | ||
core::Size | cycle | ||
) | [virtual] |
callback executed before any Monte Carlo trials
Reimplemented from protocols::canonical_sampling::ThermodynamicMover.
References idealize_sidechains(), and init_task().
Real protocols::simple_moves::sidechain_moves::SidechainMoverBase::last_proposal_density_ratio | ( | ) | [virtual] |
get the ratio of proposal densities for the last move
Reimplemented from protocols::canonical_sampling::ThermodynamicMover.
virtual void protocols::simple_moves::sidechain_moves::SidechainMoverBase::make_chi_move | ( | core::conformation::Residue const & | residue, |
ChiVector const & | old_chi, | ||
ChiVector & | new_chi | ||
) | [pure virtual] |
conformation::ResidueOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::make_move | ( | core::conformation::ResidueOP | res | ) | [virtual] |
References compute_proposal_density(), protocols::comparative_modeling::features::E, make_chi_move(), and protocols::simple_moves::tr().
Referenced by apply().
utility::vector1< Size > const & protocols::simple_moves::sidechain_moves::SidechainMoverBase::packed_residues | ( | ) | const |
get the residues that can be changed by this mover
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::parse_my_tag | ( | utility::tag::TagPtr const | tag, |
protocols::moves::DataMap & | data, | ||
protocols::filters::Filters_map const & | filters, | ||
protocols::moves::Movers_map const & | movers, | ||
core::pose::Pose const & | pose | ||
) | [virtual] |
Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing.
Some movers need not be parsed, so we shouldn't stop executions. This, however, calls attention to the lack of this method, which could be due to something as silly as a wrong parameters definition.
Reimplemented from protocols::moves::Mover.
Reimplemented in protocols::simple_moves::sidechain_moves::JumpRotamerSidechainMover, protocols::simple_moves::sidechain_moves::PerturbChiSidechainMover, and protocols::simple_moves::sidechain_moves::PerturbRotamerSidechainMover.
References change_chi_without_replacing_residue(), core::sequence::end, protocols::moves::DataMap::get(), protocols::moves::DataMap::has(), preserve_detailed_balance(), set_change_chi_without_replacing_residue(), and set_preserve_detailed_balance().
bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::preserve_detailed_balance | ( | ) | const [virtual] |
get whether detailed balance is preserved (i.e. proposal density ratio calculated)
Implements protocols::canonical_sampling::ThermodynamicMover.
Referenced by parse_my_tag(), and set_preserve_detailed_balance().
utility::vector1< bool > const & protocols::simple_moves::sidechain_moves::SidechainMoverBase::residue_packed | ( | ) | const |
get a vector indicating whether each residue can be packed
pack::dunbrack::RotamerLibrary const & protocols::simple_moves::sidechain_moves::SidechainMoverBase::rotamer_library | ( | ) | const |
get the rotamer library
Referenced by protocols::simple_moves::sidechain_moves::PerturbRotamerSidechainMover::build_rotamer_list().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_change_chi_without_replacing_residue | ( | bool | setting | ) |
perform direct chi manipulations rather than using replace_residue to effect rotamer changes; useful if things are kinematically dependent on a sidechain.
References change_chi_without_replacing_residue().
Referenced by parse_my_tag().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_preserve_detailed_balance | ( | bool | setting | ) | [virtual] |
set whether detailed balance is preserved (i.e. proposal density ratio calculated)
Implements protocols::canonical_sampling::ThermodynamicMover.
References preserve_detailed_balance().
Referenced by parse_my_tag().
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_task | ( | core::pack::task::PackerTaskCOP | task | ) |
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_task_factory | ( | core::pack::task::TaskFactoryCOP | task_factory | ) |
set the task factory
References task_factory().
core::Size protocols::simple_moves::sidechain_moves::SidechainMoverBase::suggest_residue_number | ( | core::pose::Pose const & | pose | ) | const [virtual] |
References core::conformation::Residue::name1(), core::pose::Pose::residue(), and protocols::simple_moves::RG().
Referenced by apply().
pack::task::PackerTaskCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task | ( | ) | const |
get the packer task
Referenced by set_task().
pack::task::TaskFactoryCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task_factory | ( | ) | const |
get the task factory
Referenced by set_task_factory().
utility::vector1< id::TorsionID_Range > protocols::simple_moves::sidechain_moves::SidechainMoverBase::torsion_id_ranges | ( | core::pose::Pose & | pose | ) | [virtual] |
get the TorsionIDs perturbed by the mover during moves, along with their ranges
Implements protocols::canonical_sampling::ThermodynamicMover.