Rosetta Protocols  2014.35
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
protocols::simple_moves::BBGaussianMover Class Reference

the basic class for implementing Gaussian Perturbation of bb More...

#include <BBGaussianMover.hh>

Public Types

typedef core::Real Real
 
typedef core::Size Size
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseOP PoseOP
 
typedef core::pose::PoseCOP PoseCOP
 
typedef core::conformation::Residue Residue
 
typedef utility::vector1< RealVector
 
typedef numeric::xyzVector< RealxyzVector
 
typedef utility::vector1
< xyzVector
VdRdPhi
 
typedef utility::vector1< VdRdPhiVMatrix
 
typedef utility::vector1< VectorMatrix
 
- 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

 BBGaussianMover ()
 
 BBGaussianMover (Size, Size, Size)
 
 ~BBGaussianMover ()
 
virtual protocols::moves::MoverOP clone () const
 Return a clone of the Mover object. More...
 
void apply (Pose &pose)
 
void init ()
 
void resize (Size, Size, Size)
 
void factorA (Real const fA)
 
void factorB (Real const fB)
 
void get_G ()
 
void get_A ()
 
Real get_L_prime ()
 
Real get_L_move (Pose &)
 
void get_VdRdPhi (Pose const &)
 
core::kinematics::MoveMapCOP movemap ()
 
void movemap (core::kinematics::MoveMapCOP new_movemap)
 
void update_counting_last_PDR (Real)
 
virtual std::string get_name () const
 Each derived class must specify its name. The class name. More...
 
virtual Real last_proposal_density_ratio ()
 get the ratio of proposal densities for the last move More...
 
virtual bool preserve_detailed_balance () const
 get whether detailed balance is preserved (i.e. no Ramachandran biasing) More...
 
virtual void set_preserve_detailed_balance (bool preserve_detailed_balance)
 set whether detailed balance is preserved (i.e. no Ramachandran biasing) More...
 
virtual utility::vector1
< core::id::TorsionID_Range
torsion_id_ranges (core::pose::Pose &)
 dummy More...
 
- Public Member Functions inherited from protocols::canonical_sampling::ThermodynamicMover
 ThermodynamicMover ()
 Default constructor. More...
 
virtual ~ThermodynamicMover ()
 Default destructor. 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 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...
 
virtual utility::vector1
< core::id::DOF_ID_Range
dof_id_ranges (core::pose::Pose &pose)
 Return a list specifying which degrees of freedom may be perturbed by apply(), and the in what range each perturbation may be. 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)
 
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...
 

Protected Member Functions

void setup_list (Pose const &)
 
xyzVector get_dRdPhi (xyzVector const &r1, xyzVector const &r2, xyzVector const &r)
 
xyzVector get_dRdTheta (xyzVector const &r1, xyzVector const &r2, xyzVector const &r3, xyzVector const &r)
 
virtual void parse_my_tag (TagCOP, basic::datacache::DataMap &, Filters_map const &, protocols::moves::Movers_map const &, Pose const &)
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
Real cholesky_fw (Matrix &, Size, Vector &, Vector &, Size from=1, Size to=0, Real scale=1.0)
 
Real cholesky_bw (Matrix &, Size, Vector &, Vector &, Size from=1, Size to=0, Real scale=1.0)
 
void pivot_range_randomly (Pose &, Size, Size)
 randomly rotate the dih angle in this range for avoiding the fixed ends 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...
 

Protected Attributes

Size n_end_atom_
 
Size n_dof_angle_
 
Size n_pert_res_
 
Size resnum_
 
utility::vector1< std::pair
< Size, Size > > 
available_seg_list_
 
utility::vector1< std::pair
< Size, std::string > > 
end_atom_list_
 
Matrix matrix_G
 
Matrix matrix_A
 
VMatrix matrix_dRdPhi
 
Real last_proposal_density_ratio_
 
bool preserve_detailed_balance_
 
core::kinematics::MoveMapCOP movemap_
 
Vector dphi
 
Real factorA_
 
Real factorB_
 
Size N_auto_all
 
Size N_auto_small
 
bool use_all_pivot_res_
 
bool auto_adjust_factorA_
 
bool fix_short_segment_
 

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

Detailed Description

the basic class for implementing Gaussian Perturbation of bb

Note
"Monte Carlo update for chain molecules: Biased Gaussian steps in torsional space" "The Journal of Chemical Physics, Vol. 114, No. 18. (2001), pp. 8154-8158." Two steps for perturbing the backbone and keeping the geometry constrain Step 1: Gaussian Biased steps in torsional space: the end atoms of the moving segment should be choosen by user and to keep the geometry constrain(6), the DOF of the moving segment > 6 Step 2: "pivot" update the bb conformation, or followed by a chainclosure method (BBConRot)

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::simple_moves::BBGaussianMover::BBGaussianMover ( )

References canonical_sampling, and init().

Referenced by clone().

protocols::simple_moves::BBGaussianMover::BBGaussianMover ( Size  n_end_atom,
Size  n_dof_angle,
Size  n_pert_res 
)

References canonical_sampling, and init().

protocols::simple_moves::BBGaussianMover::~BBGaussianMover ( )

Member Function Documentation

void protocols::simple_moves::BBGaussianMover::apply ( Pose pose)
virtual
core::Real protocols::simple_moves::BBGaussianMover::cholesky_bw ( Matrix a,
Size  n,
Vector dphi,
Vector delta,
Size  from = 1,
Size  to = 0,
Real  scale = 1.0 
)
protected
core::Real protocols::simple_moves::BBGaussianMover::cholesky_fw ( Matrix a,
Size  n,
Vector delta,
Vector dphi,
Size  from = 1,
Size  to = 0,
Real  scale = 1.0 
)
protected
protocols::moves::MoverOP protocols::simple_moves::BBGaussianMover::clone ( ) const
virtual

Return a clone of the Mover object.

clone is meant to return an OP'ed deep copy of this object. This really should be a pure virtual in the base class, but adding pure virtuals to Mover would massively disrupt the code. This default implementation crashes at runtime instead of compiletime if you try to call it. If this code is causing you problems, your Mover needs to override this function.

Reimplemented from protocols::moves::Mover.

Reimplemented in protocols::simple_moves::BBG8T3AMover.

References BBGaussianMover(), factorA_, factorB_, and movemap_.

void protocols::simple_moves::BBGaussianMover::factorA ( core::Real const  fA)
void protocols::simple_moves::BBGaussianMover::factorB ( core::Real const  fB)
void protocols::simple_moves::BBGaussianMover::get_A ( )

References factorA_, factorB_, matrix_A, matrix_G, and n_dof_angle_.

Referenced by apply().

xyzVector protocols::simple_moves::BBGaussianMover::get_dRdPhi ( xyzVector const &  r1,
xyzVector const &  r2,
xyzVector const &  r 
)
inlineprotected
xyzVector protocols::simple_moves::BBGaussianMover::get_dRdTheta ( xyzVector const &  r1,
xyzVector const &  r2,
xyzVector const &  r3,
xyzVector const &  r 
)
inlineprotected
void protocols::simple_moves::BBGaussianMover::get_G ( )

References end_atom_list_, matrix_dRdPhi, matrix_G, and n_dof_angle_.

Referenced by apply().

core::Real protocols::simple_moves::BBGaussianMover::get_L_move ( Pose pose)
core::Real protocols::simple_moves::BBGaussianMover::get_L_prime ( )
Note
calculate L', update last_proposal_density

References cholesky_bw(), dphi, matrix_A, and n_dof_angle_.

Referenced by apply().

std::string protocols::simple_moves::BBGaussianMover::get_name ( ) const
virtual

Each derived class must specify its name. The class name.

Implements protocols::moves::Mover.

Reimplemented in protocols::simple_moves::BBG8T3AMover, and protocols::simple_moves::BBConRotMover.

void protocols::simple_moves::BBGaussianMover::get_VdRdPhi ( Pose const &  pose)
void protocols::simple_moves::BBGaussianMover::init ( void  )
core::Real protocols::simple_moves::BBGaussianMover::last_proposal_density_ratio ( )
virtual

get the ratio of proposal densities for the last move

Reimplemented from protocols::canonical_sampling::ThermodynamicMover.

References auto_adjust_factorA_, last_proposal_density_ratio_, and update_counting_last_PDR().

core::kinematics::MoveMapCOP protocols::simple_moves::BBGaussianMover::movemap ( )
void protocols::simple_moves::BBGaussianMover::movemap ( core::kinematics::MoveMapCOP  new_movemap)

References available_seg_list_, and movemap_.

void protocols::simple_moves::BBGaussianMover::parse_my_tag ( TagCOP  tag,
basic::datacache::DataMap data,
Filters_map const &  filters,
protocols::moves::Movers_map const &  movers,
Pose const &  pose 
)
protectedvirtual

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.

References auto_adjust_factorA_, end_atom_list_, factorA_, factorB_, fix_short_segment_, movemap(), n_dof_angle_, n_end_atom_, n_pert_res_, protocols::rosetta_scripts::parse_movemap(), resize(), runtime_assert, ss, utility::string_split(), protocols::simple_moves::TR, and use_all_pivot_res_.

void protocols::simple_moves::BBGaussianMover::pivot_range_randomly ( Pose pose,
Size  i,
Size  to 
)
protected
bool protocols::simple_moves::BBGaussianMover::preserve_detailed_balance ( ) const
virtual

get whether detailed balance is preserved (i.e. no Ramachandran biasing)

Implements protocols::canonical_sampling::ThermodynamicMover.

References preserve_detailed_balance_.

Referenced by set_preserve_detailed_balance().

void protocols::simple_moves::BBGaussianMover::resize ( Size  n_end_atom,
Size  n_dof_angle,
Size  n_pert_res 
)
void protocols::simple_moves::BBGaussianMover::set_preserve_detailed_balance ( bool  preserve_detailed_balance)
virtual

set whether detailed balance is preserved (i.e. no Ramachandran biasing)

Implements protocols::canonical_sampling::ThermodynamicMover.

References preserve_detailed_balance(), preserve_detailed_balance_, and protocols::simple_moves::TR.

void protocols::simple_moves::BBGaussianMover::setup_list ( Pose const &  pose)
protected
virtual utility::vector1<core::id::TorsionID_Range> protocols::simple_moves::BBGaussianMover::torsion_id_ranges ( core::pose::Pose )
inlinevirtual
void protocols::simple_moves::BBGaussianMover::update_counting_last_PDR ( Real  lastP)

Member Data Documentation

bool protocols::simple_moves::BBGaussianMover::auto_adjust_factorA_
protected
utility::vector1< std::pair<Size,Size> > protocols::simple_moves::BBGaussianMover::available_seg_list_
protected
Vector protocols::simple_moves::BBGaussianMover::dphi
protected

Referenced by get_L_move(), get_L_prime(), and resize().

utility::vector1< std::pair<Size, std::string> > protocols::simple_moves::BBGaussianMover::end_atom_list_
protected
Note
<resi, atomname> 0 means the last res of the mobile segment

Referenced by get_G(), get_VdRdPhi(), init(), and parse_my_tag().

Real protocols::simple_moves::BBGaussianMover::factorA_
protected
Real protocols::simple_moves::BBGaussianMover::factorB_
protected
bool protocols::simple_moves::BBGaussianMover::fix_short_segment_
protected

Referenced by init(), parse_my_tag(), and setup_list().

Real protocols::simple_moves::BBGaussianMover::last_proposal_density_ratio_
protected
Matrix protocols::simple_moves::BBGaussianMover::matrix_A
protected
VMatrix protocols::simple_moves::BBGaussianMover::matrix_dRdPhi
protected
Matrix protocols::simple_moves::BBGaussianMover::matrix_G
protected
core::kinematics::MoveMapCOP protocols::simple_moves::BBGaussianMover::movemap_
protected
Size protocols::simple_moves::BBGaussianMover::N_auto_all
protected

Referenced by init(), and update_counting_last_PDR().

Size protocols::simple_moves::BBGaussianMover::N_auto_small
protected

Referenced by init(), and update_counting_last_PDR().

Size protocols::simple_moves::BBGaussianMover::n_dof_angle_
protected
Size protocols::simple_moves::BBGaussianMover::n_end_atom_
protected

Referenced by init(), parse_my_tag(), and resize().

Size protocols::simple_moves::BBGaussianMover::n_pert_res_
protected
bool protocols::simple_moves::BBGaussianMover::preserve_detailed_balance_
protected
Size protocols::simple_moves::BBGaussianMover::resnum_
protected
bool protocols::simple_moves::BBGaussianMover::use_all_pivot_res_
protected

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