Rosetta Protocols  2014.35
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::simple_moves::sidechain_moves::SidechainMoverBase Class Referenceabstract

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 Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef
protocols::filters::Filters_map 
Filters_map
 
typedef std::list< std::stringStrings
 

Public Member Functions

 SidechainMoverBase ()
 default constructor More...
 
 SidechainMoverBase (core::pack::dunbrack::RotamerLibrary const &rotamer_library)
 constructor with user provided rotamer library More...
 
 SidechainMoverBase (SidechainMoverBase const &mover)
 
 ~SidechainMoverBase ()
 
virtual void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::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. More...
 
void init_task (core::pose::Pose const &pose)
 initialize the packer task if necessary More...
 
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 are attempted. More...
 
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 More...
 
virtual std::string get_name () const
 Each derived class must specify its name. The class name. More...
 
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
 
void idealize_sidechains (core::pose::Pose &pose)
 idealize sidechains that might be altered More...
 
core::pack::dunbrack::RotamerLibrary
const & 
rotamer_library () const
 get the rotamer library More...
 
core::pack::task::TaskFactoryCOP task_factory () const
 get the task factory More...
 
void set_task_factory (core::pack::task::TaskFactoryCOP task_factory)
 set the task factory More...
 
core::pack::task::PackerTaskCOP task () const
 get the packer task More...
 
void set_task (core::pack::task::PackerTaskCOP task)
 set the task More...
 
bool preserve_detailed_balance () const
 get whether detailed balance is preserved (i.e. proposal density ratio calculated) More...
 
void set_preserve_detailed_balance (bool setting)
 set whether detailed balance is preserved (i.e. proposal density ratio calculated) More...
 
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. More...
 
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. More...
 
virtual bool have_mutated_residue () const
 return true if your last move has mutated residue — make sure the residue is replaced entirely More...
 
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 More...
 
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 More...
 
utility::vector1< core::Size >
const & 
packed_residues () const
 get the residues that can be changed by this mover More...
 
utility::vector1< bool > const & residue_packed () const
 get a vector indicating whether each residue can be packed More...
 
virtual core::Real last_proposal_density_ratio ()
 get the ratio of proposal densities for the last move More...
 
- Public Member Functions inherited from protocols::canonical_sampling::ThermodynamicMover
 ThermodynamicMover ()
 Default constructor. More...
 
virtual ~ThermodynamicMover ()
 Default destructor. More...
 
virtual void observe_after_metropolis (protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 Callback executed after the Metropolis criterion is evaluated. More...
 
virtual void finalize_simulation (core::pose::Pose &pose, protocols::canonical_sampling::MetropolisHastingsMover const &metropolis_hastings_mover)
 Callback executed after all Monte Carlo trials are completed. More...
 
virtual bool is_multi_trial ()
 Return true if the move performs multiple trials on each apply. More...
 
virtual core::Real last_inner_score_temperature_delta ()
 If this is a multi-trial move, return the change in internal score/temperature caused by the last call to apply(). More...
 
virtual
protocols::canonical_sampling::MetropolisHastingsMoverAP 
metropolis_hastings_mover ()
 If this is a multi-trial move, return the MetropolisHastingsMover being used internally. More...
 
virtual void set_metropolis_hastings_mover (protocols::canonical_sampling::MetropolisHastingsMoverAP metropolis_hastings_mover)
 If this is a multi-trial move, set the MetropolisHastingsMover to be used internally. More...
 
- Public Member Functions inherited from protocols::moves::Mover
 Mover ()
 
virtual ~Mover ()
 
virtual MoverSP create ()
 
virtual void apply (core::io::serialization::PipeMap &pmap)
 
virtual void parse_state (SerializableState const &state)
 
virtual void parse_def (utility::lua::LuaObject const &def, utility::lua::LuaObject const &score_fxns, utility::lua::LuaObject const &tasks, MoverCacheSP cache)
 
virtual void save_state (SerializableState &state)
 
 Mover (std::string const &type_name)
 sets the type for a mover; name_ has been removed (2010/05/14) More...
 
 Mover (Mover const &other)
 
Moveroperator= (Mover const &other)
 assignment operator More...
 
std::string const & type () const
 
void set_type (std::string const &setting)
 
std::string get_current_tag () const
 A tag is a unique identifier used to identify structures produced by this Mover. get_current_tag() returns the tag, and set_current_tag( std::string tag ) sets the tag. This functionality is not intended for use with the 2008 job distributor. More...
 
void set_current_tag (std::string const &new_tag)
 
virtual void set_input_pose (PoseCOP pose)
 setter for poses contained for rms More...
 
virtual void set_native_pose (PoseCOP pose)
 setter for native poses contained for rms -— we should get rid of this method? it is widely used, but a bit unsafe More...
 
PoseCOP get_input_pose () const
 
PoseCOP get_native_pose () const
 
virtual void test_move (Pose &pose)
 : Unit test support function. Apply one move to a given pose. Allows extra test specific functions to be called before applying More...
 
void type (const std::string &type_in)
 
virtual MoverOP clone () const
 Return a clone of the Mover object. More...
 
std::string get_type () const
 
MoverStatus get_last_move_status () const
 end parser interface, start Job Distributor interface///////////// More...
 
void reset_status ()
 resets status to SUCCESS, meant to be used before an apply(). The job distributor (august 08 vintage) uses this to ensure non-accumulation of status across apply()s. More...
 
virtual core::pose::PoseOP get_additional_output ()
 Mechanism by which a mover may return multiple output poses from a single input pose. More...
 
virtual void clear_info ()
 Strings container can be used to return miscellaneous info (as std::string) from a mover, such as notes about the results of apply(). The job distributor (Apr 09 vintage) will check this function to see if your protocol wants to add string info to the Job that ran this mover. One way this can be useful is that later, a JobOutputter may include/append this info to an output file. More...
 
virtual Stringsinfo ()
 non-const accessor More...
 
virtual Strings const & info () const
 const accessor More...
 
virtual bool reinitialize_for_each_job () const
 Inform the Job Distributor (August '08 vintage) whether this object needs to be freshly regenerated on each use. More...
 
virtual bool reinitialize_for_new_input () const
 Inform the Job Distributor (August '08 vintage) whether this object needs to be regenerated when the input pose is about to change, (for example, if the Mover has special code on the first apply() that is only valid for that one input pose). More...
 
virtual MoverOP fresh_instance () const
 Generates a new Mover object freshly created with the default ctor. More...
 
void set_current_job (protocols::jobdist::BasicJobCOP job)
 
jobdist::BasicJobCOP get_current_job () const
 
virtual void show (std::ostream &output=std::cout) const
 Outputs details about the Mover, including current settings. More...
 

Private Member Functions

void set_defaults ()
 
void init_from_options ()
 

Private Attributes

core::pack::dunbrack::RotamerLibrary
const & 
rotamer_library_
 
core::pack::task::TaskFactoryCOP task_factory_
 
core::pack::task::PackerTaskCOP task_
 
utility::vector1< core::Sizepacked_residues_
 
utility::vector1< boolresidue_packed_
 
bool preserve_detailed_balance_
 
bool change_chi_without_replacing_residue_
 
utility::vector1< core::Reallast_chi_angles_
 
core::Size last_nchi_
 
core::Real last_proposal_density_ratio_
 

Additional Inherited Members

- Static Public Member Functions inherited from protocols::moves::Mover
static std::string name ()
 
static void register_options ()
 Overload this static method if you access options within the mover. More...
 
- Protected Member Functions inherited from protocols::moves::Mover
void set_last_move_status (MoverStatus status)
 nonvirtual setter for MoverStatus last_status_. Protected means that only the mover itself will be able to change its own status. The job distributor (august 08 vintage) is aware of status set with this function and will do what the MoverStatus says. More...
 

Detailed Description

class for non-discrete side chain sampling using Dunbrack rotamer probabilities/distributions

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase ( )

default constructor

References init_from_options(), and set_defaults().

protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase ( core::pack::dunbrack::RotamerLibrary const &  rotamer_library)

constructor with user provided rotamer library

References init_from_options(), and set_defaults().

protocols::simple_moves::sidechain_moves::SidechainMoverBase::SidechainMoverBase ( SidechainMoverBase const &  mover)
protocols::simple_moves::sidechain_moves::SidechainMoverBase::~SidechainMoverBase ( )

Member Function Documentation

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::apply ( core::pose::Pose pose)
virtual
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.

References change_chi_without_replacing_residue_.

Referenced by apply(), parse_my_tag(), and set_change_chi_without_replacing_residue().

virtual core::Real protocols::simple_moves::sidechain_moves::SidechainMoverBase::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
utility::vector1< id::DOF_ID_Range > protocols::simple_moves::sidechain_moves::SidechainMoverBase::dof_id_ranges ( core::pose::Pose pose)
virtual
std::string protocols::simple_moves::sidechain_moves::SidechainMoverBase::get_name ( ) const
virtual
virtual bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::have_mutated_residue ( ) const
inlinevirtual

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

Detailed:
all sidechains that might be changed are replaced with ideal coordinates that have the original chi angles

References aa_pro, core::pose::Pose::chi(), core::pose::Pose::conformation(), core::conformation::ResidueFactory::create_residue(), init_task(), packed_residues_, core::pose::Pose::replace_residue(), core::pose::Pose::residue(), core::pose::Pose::residue_type(), core::pose::Pose::set_chi(), and task_.

Referenced by initialize_simulation().

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::init_from_options ( )
private
void protocols::simple_moves::sidechain_moves::SidechainMoverBase::init_task ( core::pose::Pose const &  pose)

initialize the packer task if necessary

Detailed:
Check to make sure that a packer task exists and matches the numer of residues in the given pose. If that isn't the case, create a new one with the task factory. Exits with an error if no task factory exists.

References set_task(), task_, task_factory_, core::pose::Pose::total_residue(), and utility_exit_with_message.

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 are attempted.

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.

References last_proposal_density_ratio_.

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
utility::vector1< Size > const & protocols::simple_moves::sidechain_moves::SidechainMoverBase::packed_residues ( ) const

get the residues that can be changed by this mover

References packed_residues_.

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::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(), end, basic::datacache::DataMap::get(), basic::datacache::DataMap::has(), preserve_detailed_balance(), core::pack::task::TaskFactory::push_back(), set_change_chi_without_replacing_residue(), set_preserve_detailed_balance(), utility::string_split(), and task_factory_.

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.

References preserve_detailed_balance_.

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

References residue_packed_.

pack::dunbrack::RotamerLibrary const & protocols::simple_moves::sidechain_moves::SidechainMoverBase::rotamer_library ( ) const
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(), and change_chi_without_replacing_residue_.

Referenced by parse_my_tag().

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_defaults ( )
private
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(), and preserve_detailed_balance_.

Referenced by parse_my_tag().

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_task ( core::pack::task::PackerTaskCOP  task)

set the task

References aa_pro, packed_residues_, residue_packed_, task(), and task_.

Referenced by init_task().

void protocols::simple_moves::sidechain_moves::SidechainMoverBase::set_task_factory ( core::pack::task::TaskFactoryCOP  task_factory)

set the task factory

References task_factory(), and task_factory_.

Referenced by init_from_options().

core::Size protocols::simple_moves::sidechain_moves::SidechainMoverBase::suggest_residue_number ( core::pose::Pose const &  pose) const
virtual
pack::task::PackerTaskCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task ( ) const

get the packer task

References task_.

Referenced by set_task().

pack::task::TaskFactoryCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task_factory ( ) const

get the task factory

References 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.

Member Data Documentation

bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::change_chi_without_replacing_residue_
private
utility::vector1<core::Real> protocols::simple_moves::sidechain_moves::SidechainMoverBase::last_chi_angles_
private
core::Size protocols::simple_moves::sidechain_moves::SidechainMoverBase::last_nchi_
private
core::Real protocols::simple_moves::sidechain_moves::SidechainMoverBase::last_proposal_density_ratio_
private
utility::vector1<core::Size> protocols::simple_moves::sidechain_moves::SidechainMoverBase::packed_residues_
private
bool protocols::simple_moves::sidechain_moves::SidechainMoverBase::preserve_detailed_balance_
private
utility::vector1<bool> protocols::simple_moves::sidechain_moves::SidechainMoverBase::residue_packed_
private

Referenced by residue_packed(), and set_task().

core::pack::dunbrack::RotamerLibrary const& protocols::simple_moves::sidechain_moves::SidechainMoverBase::rotamer_library_
private

Referenced by rotamer_library().

core::pack::task::PackerTaskCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task_
private
core::pack::task::TaskFactoryCOP protocols::simple_moves::sidechain_moves::SidechainMoverBase::task_factory_
private

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