Rosetta 3.4
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
protocols::abinitio::FragmentSampler Class Reference

#include <FragmentSampler.hh>

Inheritance diagram for protocols::abinitio::FragmentSampler:
Inheritance graph
Collaboration diagram for protocols::abinitio::FragmentSampler:
Collaboration graph

List of all members.

Public Member Functions

virtual ~FragmentSampler ()
 FragmentSampler (topology_broker::TopologyBrokerOP broker)
 This constructor does not work -- Fix it before using it.
virtual moves::MoverOP clone () const
 FragmentSampler has virtual functions... use this to obtain a new instance.
virtual void apply (core::pose::Pose &pose)
virtual std::string get_name () const
 Each derived class must specify its name. The class name.
virtual void set_cycles (core::Real increase_cycles=1.0)
virtual void set_score_weight (core::scoring::ScoreType, core::Real setting, StageID stage=ALL_STAGES)
 sets a score weight for all stages of abinitio
virtual checkpoint::CheckPointerget_checkpoints ()
void topology_broker (topology_broker::TopologyBrokerOP set)
const & 
current_scorefxn () const
bool just_smooth_cycles () const
core::Size stage1_cycles () const
core::Size stage2_cycles () const
core::Size stage3_cycles () const
void set_stage4_cycles (core::Size stage4_cycles_new)
core::Size stage4_cycles () const
bool bQuickTest () const

Static Public Member Functions

static void register_options ()

Protected Member Functions

const & 
topology_broker ()
void set_mc (moves::MonteCarloOP)
moves::MonteCarlomc ()
moves::MonteCarlo const & mc () const
void set_defaults ()
void current_scorefxn (core::scoring::ScoreFunction const &scorefxn)
void recover_low (core::pose::Pose &pose, StageID stage)
virtual void replace_scorefxn (core::pose::Pose &pose, StageID stage, core::Real intra_stage_progress)
void set_current_weight (core::scoring::ScoreType type, core::Real setting)
virtual void do_stage1_cycles (core::pose::Pose &pose)
virtual void do_stage2_cycles (core::pose::Pose &pose)
virtual void do_stage3_cycles (core::pose::Pose &pose)
virtual void do_stage4_cycles (core::pose::Pose &pose)
virtual moves::MoverOP mover (core::pose::Pose const &pose, StageID stage_id, core::scoring::ScoreFunction const &scorefxn, core::Real progress=1.0)
virtual void prepare_stage1 (core::pose::Pose &pose)
virtual void prepare_stage2 (core::pose::Pose &pose)
virtual void prepare_stage3 (core::pose::Pose &pose)
virtual void prepare_stage4 (core::pose::Pose &pose)
virtual void prepare_loop_in_stage3 (core::pose::Pose &, Size, Size)
virtual void prepare_loop_in_stage4 (core::pose::Pose &, Size, Size)
moves::MonteCarloOP mc_ptr ()

Protected Attributes

Size stage1_cycles_
Size stage2_cycles_
Size stage3_cycles_
Size stage4_cycles_

Detailed Description

@ detail general usage: FragmentSampler abinitio; abinitio.init( pose ); ... while(nstruct) { abinitio.apply( pose ); }

call FragmentSampler::register_options() before core::init to add relevant options to the applications help

, with the following stages, all of which uses a different ScoreFunction based on the cen_std.wts in minirosetta_database:

The class implements the basic abinito approach as known from rosetta++. We tried to set this up, such that behaviour of the protocol can be changed in many different ways ( see, e.g., FoldConstraints ). To be able to change the behaviour of the protocol easily the class-apply function and methods called therein (e.g., prepare_XXX() / do_XXX_cycles() ) should not directly change moves or trials. A reference to the currently used score-function should be obtained by mc().score_function() ...

Behaviour can be changed in the following ways:

use non-classic FragmentMover --> eg. not uniformly sampled fragments, but using some weighting --> large and small moves doesn't have to be 3mers and 9mers... use other movers... ---> or other fragets for the "convenience constructor" use custom trial classes --> overload update_moves()

change sampling behaviour: overload prepare_XXX() methods: these are called before the cycling for a certain stage begins overload do_stageX_cycles() : the actual loops over trial-moves ...

change scoring functions: overload set_default_scores() weight-changes effective for all stages: set_score_weight()

Constructor & Destructor Documentation

protocols::abinitio::FragmentSampler::~FragmentSampler ( ) [virtual]
protocols::abinitio::FragmentSampler::FragmentSampler ( topology_broker::TopologyBrokerOP  broker)

This constructor does not work -- Fix it before using it.

large (stage1/stage2) small(stage2/stage3/stage4) smooth_small ( stage3/stage4)

References set_defaults(), and protocols::moves::Mover::type().

Referenced by clone().

Member Function Documentation

void protocols::abinitio::FragmentSampler::apply ( core::pose::Pose pose) [virtual]
bool protocols::abinitio::FragmentSampler::bQuickTest ( ) const [inline]
moves::MoverOP protocols::abinitio::FragmentSampler::clone ( ) const [virtual]

FragmentSampler has virtual functions... use this to obtain a new instance.

Reimplemented from protocols::moves::Mover.

Reimplemented in protocols::abinitio::ConstraintFragmentSampler.

References FragmentSampler().

scoring::ScoreFunction const & protocols::abinitio::FragmentSampler::current_scorefxn ( ) const
void protocols::abinitio::FragmentSampler::current_scorefxn ( core::scoring::ScoreFunction const &  scorefxn) [protected]
void protocols::abinitio::FragmentSampler::do_stage1_cycles ( core::pose::Pose pose) [protected, virtual]
void protocols::abinitio::FragmentSampler::do_stage2_cycles ( core::pose::Pose pose) [protected, virtual]
void protocols::abinitio::FragmentSampler::do_stage3_cycles ( core::pose::Pose pose) [protected, virtual]

stage3 cycles: nloop1 : outer iterations nloop2 : inner iterations stage3_cycle : trials per inner iteration every inner iteration we switch between score_stage3a ( default: score2 ) and score_stage3b ( default: score 5 )

prepare_loop_in_stage3() is called before the stage3_cycles() of trials are started.

first outer loop-iteration is done with TrialMover trial_large() all following iterations with trial_small()

start each iteration with the lowest_score_pose. ( mc->recover_low() -- called in prepare_loop_in_stage3() )

References protocols::moves::RepeatMover::apply(), protocols::checkpoint::CheckPointer::checkpoint(), current_scorefxn(), protocols::checkpoint::CheckPointer::debug(), get_checkpoints(), protocols::moves::Mover::get_current_tag(), mc_ptr(), mover(), prepare_loop_in_stage3(), recover_low(), stage3_cycles(), protocols::abinitio::STAGE_3a, protocols::abinitio::STAGE_3b, and tr().

Referenced by apply().

void protocols::abinitio::FragmentSampler::do_stage4_cycles ( core::pose::Pose pose) [protected, virtual]
virtual checkpoint::CheckPointer& protocols::abinitio::FragmentSampler::get_checkpoints ( ) [inline, virtual]
std::string protocols::abinitio::FragmentSampler::get_name ( ) const [virtual]

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

Implements protocols::moves::Mover.

Reimplemented in protocols::abinitio::ConstraintFragmentSampler.

bool protocols::abinitio::FragmentSampler::just_smooth_cycles ( ) const [inline]
moves::MonteCarlo& protocols::abinitio::FragmentSampler::mc ( ) [inline, protected]
moves::MonteCarlo const& protocols::abinitio::FragmentSampler::mc ( ) const [inline, protected]
moves::MonteCarloOP protocols::abinitio::FragmentSampler::mc_ptr ( ) [inline, protected]
moves::MoverOP protocols::abinitio::FragmentSampler::mover ( core::pose::Pose const &  pose,
StageID  stage_id,
core::scoring::ScoreFunction const &  scorefxn,
core::Real  progress = 1.0 
) [protected, virtual]
void protocols::abinitio::FragmentSampler::prepare_loop_in_stage3 ( core::pose::Pose pose,
Size  iteration,
Size  total 
) [protected, virtual]
void protocols::abinitio::FragmentSampler::prepare_loop_in_stage4 ( core::pose::Pose pose,
Size  iteration,
Size  total 
) [protected, virtual]
void protocols::abinitio::FragmentSampler::prepare_stage1 ( core::pose::Pose pose) [protected, virtual]
void protocols::abinitio::FragmentSampler::prepare_stage2 ( core::pose::Pose pose) [protected, virtual]
void protocols::abinitio::FragmentSampler::prepare_stage3 ( core::pose::Pose pose) [protected, virtual]

References replace_scorefxn(), and protocols::abinitio::STAGE_3a.

Referenced by apply().

void protocols::abinitio::FragmentSampler::prepare_stage4 ( core::pose::Pose pose) [protected, virtual]

References replace_scorefxn(), and protocols::abinitio::STAGE_4.

Referenced by apply().

void protocols::abinitio::FragmentSampler::recover_low ( core::pose::Pose pose,
StageID  stage 
) [protected]
void protocols::abinitio::FragmentSampler::register_options ( ) [static]
void protocols::abinitio::FragmentSampler::replace_scorefxn ( core::pose::Pose pose,
StageID  stage,
core::Real  intra_stage_progress 
) [protected, virtual]
void protocols::abinitio::FragmentSampler::set_current_weight ( core::scoring::ScoreType  type,
core::Real  setting 
) [protected]
void protocols::abinitio::FragmentSampler::set_cycles ( core::Real  increase_cycles = 1.0) [virtual]
void protocols::abinitio::FragmentSampler::set_defaults ( ) [protected]
void protocols::abinitio::FragmentSampler::set_mc ( moves::MonteCarloOP  mc_in) [protected]
void protocols::abinitio::FragmentSampler::set_score_weight ( core::scoring::ScoreType  type,
core::Real  setting,
StageID  stage = ALL_STAGES 
) [virtual]
void protocols::abinitio::FragmentSampler::set_stage4_cycles ( core::Size  stage4_cycles_new) [inline]

References stage4_cycles_.

core::Size protocols::abinitio::FragmentSampler::stage1_cycles ( ) const [inline]
core::Size protocols::abinitio::FragmentSampler::stage2_cycles ( ) const [inline]

References stage2_cycles_.

Referenced by do_stage2_cycles().

core::Size protocols::abinitio::FragmentSampler::stage3_cycles ( ) const [inline]

References stage3_cycles_.

Referenced by do_stage3_cycles().

core::Size protocols::abinitio::FragmentSampler::stage4_cycles ( ) const [inline]

References stage4_cycles_.

Referenced by do_stage4_cycles().

void protocols::abinitio::FragmentSampler::topology_broker ( topology_broker::TopologyBrokerOP  set)
topology_broker::TopologyBroker const & protocols::abinitio::FragmentSampler::topology_broker ( ) [protected]

Member Data Documentation

Referenced by set_cycles(), and stage1_cycles().

Referenced by set_cycles(), and stage2_cycles().

Referenced by set_cycles(), and stage3_cycles().

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines