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

#include <MembraneAbinitio.hh>

Inheritance diagram for protocols::abinitio::MembraneAbinitio:
Inheritance graph
[legend]
Collaboration diagram for protocols::abinitio::MembraneAbinitio:
Collaboration graph
[legend]

List of all members.

Public Types

enum  StageID {
  ALL_STAGES = 0, STAGE_1, STAGE_2, STAGE_3a,
  STAGE_3b, STAGE_4
}

Public Member Functions

 MembraneAbinitio (simple_moves::FragmentMoverOP brute_move_small, simple_moves::FragmentMoverOP brute_move_small_top25, simple_moves::FragmentMoverOP brute_move_large, simple_moves::FragmentMoverOP smooth_move_small, int)
 This constructor does not work -- Fix it before using it.
 MembraneAbinitio (core::fragment::FragSetCOP fragset_small, core::fragment::FragSetCOP fragset_small_top25, core::fragment::FragSetCOP fragset_large, core::kinematics::MoveMapCOP movemap)
 constructor: supply fragsets for large and small fragment moves
virtual void init (core::pose::Pose const &pose)
 setup moves, mc-object, scores
virtual moves::MoverOP clone () const
 MembraneAbinitio 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.
simple_moves::FragmentMoverOP smooth_move_small ()
simple_moves::FragmentMoverOP brute_move_small_top25 ()
simple_moves::FragmentMoverOP brute_move_small ()
simple_moves::FragmentMoverOP brute_move_large ()
virtual void set_movemap (core::kinematics::MoveMapCOP mm)
core::kinematics::MoveMapCOP movemap ()
void add_spanning_region (core::pose::Pose &pose)
void move_all_inserted (core::pose::Pose &pose)
void print_debug (core::pose::Pose &pose)
void set_moves (simple_moves::FragmentMoverOP brute_move_small, simple_moves::FragmentMoverOP brute_move_large, simple_moves::FragmentMoverOP smooth_move_small)
void set_mc (moves::MonteCarloOP)
moves::MonteCarlomc ()
moves::MonteCarlo const & mc () const
virtual void set_cycles (core::Real increase_cycles=1.0)
Size total_trials () const
virtual void clear_checkpoints (void)
 for debugging, one wants to have access to the native pose.
virtual bool recover_checkpoint (core::pose::Pose &pose, std::string const &id)
virtual void checkpoint (core::pose::Pose &pose, std::string const &id)
virtual void set_score_weight (core::scoring::ScoreType, core::Real setting, StageID stage=ALL_STAGES)
 for debugging, one wants to have access to the native pose.
bool just_smooth_cycles () const
Size stage1_cycles () const
Size stage2_cycles () const
Size stage3_cycles () const
void set_stage4_cycles (Size stage4_cycles_new)
Size stage4_cycles () const
bool bQuickTest () const
void set_only_stage4 (bool value)

Static Public Member Functions

static void register_options ()

Protected Member Functions

virtual void update_moves ()
virtual void set_defaults (core::pose::Pose const &pose)
virtual void set_default_options ()
virtual void set_default_mc (core::pose::Pose const &pose, core::scoring::ScoreFunction const &scorefxn)
virtual void set_default_scores ()
core::scoring::ScoreFunction
const & 
current_scorefxn () const
void current_scorefxn (core::scoring::ScoreFunction const &scorefxn)
void set_current_weight (core::scoring::ScoreType type, core::Real setting)
virtual int do_stage1_cycles (core::pose::Pose &pose)
virtual int do_stage2_cycles (core::pose::Pose &pose)
virtual int do_stage3_cycles (core::pose::Pose &pose)
virtual int do_stage3b_cycles (core::pose::Pose &pose)
virtual int do_stage4_cycles (core::pose::Pose &pose)
virtual moves::TrialMoverOP stage2_mover (core::pose::Pose &pose, moves::TrialMoverOP trials_in)
virtual moves::TrialMoverOP stage3_mover (core::pose::Pose &pose, int lct1, int lct2, moves::TrialMoverOP trials_in)
virtual moves::TrialMoverOP stage4_mover (core::pose::Pose &pose, int kk, moves::TrialMoverOP trials_in)
virtual void set_trials ()
moves::TrialMoverOP trial_large ()
moves::TrialMoverOP trial_small ()
moves::TrialMoverOP trial_small_top25 ()
moves::TrialMoverOP trial_smooth ()
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)
void output_debug_structure (core::pose::Pose &pose, std::string prefix)
moves::MonteCarloOP mc_ptr ()

Protected Attributes

Size stage1_cycles_
Size stage2_cycles_
Size stage3_cycles_
Size stage4_cycles_

Detailed Description

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

call MembraneAbinitio::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()


Member Enumeration Documentation

Enumerator:
ALL_STAGES 
STAGE_1 
STAGE_2 
STAGE_3a 
STAGE_3b 
STAGE_4 

Constructor & Destructor Documentation

protocols::abinitio::MembraneAbinitio::MembraneAbinitio ( simple_moves::FragmentMoverOP  brute_move_small,
simple_moves::FragmentMoverOP  brute_move_small_top25,
simple_moves::FragmentMoverOP  brute_move_large,
simple_moves::FragmentMoverOP  smooth_move_small,
int   
)

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

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

References protocols::moves::Mover::type().

Referenced by clone().

protocols::abinitio::MembraneAbinitio::MembraneAbinitio ( core::fragment::FragSetCOP  fragset_small,
core::fragment::FragSetCOP  fragset_small_top25,
core::fragment::FragSetCOP  fragset_large,
core::kinematics::MoveMapCOP  movemap 
)

constructor: supply fragsets for large and small fragment moves

References protocols::moves::Mover::type().


Member Function Documentation

void protocols::abinitio::MembraneAbinitio::add_spanning_region ( core::pose::Pose pose)
void protocols::abinitio::MembraneAbinitio::apply ( core::pose::Pose pose) [virtual]
bool protocols::abinitio::MembraneAbinitio::bQuickTest ( ) const [inline]

Referenced by set_default_options().

simple_moves::FragmentMoverOP protocols::abinitio::MembraneAbinitio::brute_move_large ( )

Referenced by do_stage1_cycles(), and set_moves().

simple_moves::FragmentMoverOP protocols::abinitio::MembraneAbinitio::brute_move_small ( )

Referenced by set_moves().

simple_moves::FragmentMoverOP protocols::abinitio::MembraneAbinitio::brute_move_small_top25 ( )
void protocols::abinitio::MembraneAbinitio::checkpoint ( core::pose::Pose pose,
std::string const &  id 
) [virtual]
void protocols::abinitio::MembraneAbinitio::clear_checkpoints ( void  ) [virtual]

for debugging, one wants to have access to the native pose.

Referenced by apply().

moves::MoverOP protocols::abinitio::MembraneAbinitio::clone ( ) const [virtual]

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

Reimplemented from protocols::moves::Mover.

References MembraneAbinitio().

scoring::ScoreFunction const & protocols::abinitio::MembraneAbinitio::current_scorefxn ( ) const [protected]
void protocols::abinitio::MembraneAbinitio::current_scorefxn ( core::scoring::ScoreFunction const &  scorefxn) [protected]
int protocols::abinitio::MembraneAbinitio::do_stage1_cycles ( core::pose::Pose pose) [protected, virtual]
int protocols::abinitio::MembraneAbinitio::do_stage2_cycles ( core::pose::Pose pose) [protected, virtual]
int protocols::abinitio::MembraneAbinitio::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(), checkpoint(), core::scoring::linear_chainbreak, prepare_loop_in_stage3(), recover_checkpoint(), stage3_cycles(), stage3_mover(), tr(), trial_large(), and trial_small_top25().

Referenced by apply().

int protocols::abinitio::MembraneAbinitio::do_stage3b_cycles ( core::pose::Pose pose) [protected, virtual]
int protocols::abinitio::MembraneAbinitio::do_stage4_cycles ( core::pose::Pose pose) [protected, virtual]

stage4 cycles: nloop_stage4: iterations stage4_cycle : trials per iteration

first iteration: use trial_small() following iterations: use trial_smooth() only trial_smooth() if just_smooth_cycles==true

prepare_loop_in_stage4() is called each time before the stage4_cycles_ of trials are started.

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

References protocols::moves::RepeatMover::apply(), checkpoint(), core::scoring::linear_chainbreak, prepare_loop_in_stage4(), recover_checkpoint(), stage4_cycles(), stage4_mover(), tr(), trial_small(), trial_small_top25(), and trial_smooth().

Referenced by apply().

std::string protocols::abinitio::MembraneAbinitio::get_name ( ) const [virtual]

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

Reimplemented from protocols::abinitio::Protocol.

void protocols::abinitio::MembraneAbinitio::init ( core::pose::Pose const &  pose) [virtual]

setup moves, mc-object, scores

can't call this from constructor; virtual functions don't operate until construction has completed.

Reimplemented from protocols::abinitio::Protocol.

References set_defaults().

bool protocols::abinitio::MembraneAbinitio::just_smooth_cycles ( ) const [inline]
moves::MonteCarlo& protocols::abinitio::MembraneAbinitio::mc ( ) [inline]
moves::MonteCarlo const& protocols::abinitio::MembraneAbinitio::mc ( ) const [inline]
moves::MonteCarloOP protocols::abinitio::MembraneAbinitio::mc_ptr ( ) [inline, protected]

Referenced by do_stage2_cycles().

void protocols::abinitio::MembraneAbinitio::move_all_inserted ( core::pose::Pose pose)
core::kinematics::MoveMapCOP protocols::abinitio::MembraneAbinitio::movemap ( )
void protocols::abinitio::MembraneAbinitio::output_debug_structure ( core::pose::Pose pose,
std::string  prefix 
) [protected, virtual]
void protocols::abinitio::MembraneAbinitio::prepare_loop_in_stage3 ( core::pose::Pose ,
Size  ,
Size   
) [protected, virtual]
void protocols::abinitio::MembraneAbinitio::prepare_loop_in_stage4 ( core::pose::Pose ,
Size  ,
Size   
) [protected, virtual]

Referenced by do_stage4_cycles().

void protocols::abinitio::MembraneAbinitio::prepare_stage1 ( core::pose::Pose pose) [protected, virtual]

References movemap(), and set_movemap().

Referenced by apply().

void protocols::abinitio::MembraneAbinitio::prepare_stage2 ( core::pose::Pose pose) [protected, virtual]

Referenced by apply().

void protocols::abinitio::MembraneAbinitio::prepare_stage3 ( core::pose::Pose pose) [protected, virtual]

Referenced by apply().

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

Referenced by apply().

void protocols::abinitio::MembraneAbinitio::print_debug ( core::pose::Pose pose)
bool protocols::abinitio::MembraneAbinitio::recover_checkpoint ( core::pose::Pose pose,
std::string const &  id 
) [virtual]
void protocols::abinitio::MembraneAbinitio::register_options ( ) [static]

call this: MembraneAbinitio::register_options() before protocols::init::init(). Derived classes that overload this function should also call Parent::register_options()

Reimplemented from protocols::abinitio::Protocol.

References core::pack::interaction_graph::debug.

void protocols::abinitio::MembraneAbinitio::set_current_weight ( core::scoring::ScoreType  type,
core::Real  setting 
) [protected]
void protocols::abinitio::MembraneAbinitio::set_cycles ( core::Real  increase_cycles = 1.0) [virtual]
void protocols::abinitio::MembraneAbinitio::set_default_mc ( core::pose::Pose const &  pose,
core::scoring::ScoreFunction const &  scorefxn 
) [protected, virtual]

References set_mc().

Referenced by set_defaults().

void protocols::abinitio::MembraneAbinitio::set_default_options ( ) [protected, virtual]

References bQuickTest(), and set_cycles().

Referenced by set_defaults().

void protocols::abinitio::MembraneAbinitio::set_default_scores ( ) [protected, virtual]
void protocols::abinitio::MembraneAbinitio::set_defaults ( core::pose::Pose const &  pose) [protected, virtual]
void protocols::abinitio::MembraneAbinitio::set_mc ( moves::MonteCarloOP  mc_in)

Referenced by set_default_mc().

void protocols::abinitio::MembraneAbinitio::set_movemap ( core::kinematics::MoveMapCOP  mm) [virtual]
void protocols::abinitio::MembraneAbinitio::set_moves ( simple_moves::FragmentMoverOP  brute_move_small,
simple_moves::FragmentMoverOP  brute_move_large,
simple_moves::FragmentMoverOP  smooth_move_small 
)
void protocols::abinitio::MembraneAbinitio::set_only_stage4 ( bool  value) [inline]
void protocols::abinitio::MembraneAbinitio::set_score_weight ( core::scoring::ScoreType  type,
core::Real  setting,
StageID  stage = ALL_STAGES 
) [virtual]

for debugging, one wants to have access to the native pose.

sets a score weight for all stages of abinitio

References ALL_STAGES, core::scoring::name_from_score_type(), STAGE_1, STAGE_2, STAGE_3a, STAGE_3b, STAGE_4, and tr().

void protocols::abinitio::MembraneAbinitio::set_stage4_cycles ( Size  stage4_cycles_new) [inline]

References stage4_cycles_.

void protocols::abinitio::MembraneAbinitio::set_trials ( ) [protected, virtual]

Referenced by update_moves().

simple_moves::FragmentMoverOP protocols::abinitio::MembraneAbinitio::smooth_move_small ( )

Referenced by set_moves().

Size protocols::abinitio::MembraneAbinitio::stage1_cycles ( ) const [inline]

References stage1_cycles_.

Referenced by apply(), and do_stage1_cycles().

Size protocols::abinitio::MembraneAbinitio::stage2_cycles ( ) const [inline]

References stage2_cycles_.

Referenced by apply(), and do_stage2_cycles().

moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::stage2_mover ( core::pose::Pose pose,
moves::TrialMoverOP  trials_in 
) [protected, virtual]
Size protocols::abinitio::MembraneAbinitio::stage3_cycles ( ) const [inline]
moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::stage3_mover ( core::pose::Pose pose,
int  lct1,
int  lct2,
moves::TrialMoverOP  trials_in 
) [protected, virtual]
Size protocols::abinitio::MembraneAbinitio::stage4_cycles ( ) const [inline]

References stage4_cycles_.

Referenced by apply(), and do_stage4_cycles().

moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::stage4_mover ( core::pose::Pose pose,
int  kk,
moves::TrialMoverOP  trials_in 
) [protected, virtual]

Referenced by do_stage4_cycles().

Size protocols::abinitio::MembraneAbinitio::total_trials ( ) const [inline]
moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::trial_large ( ) [inline, protected]
moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::trial_small ( ) [inline, protected]

Referenced by do_stage4_cycles().

moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::trial_small_top25 ( ) [inline, protected]
moves::TrialMoverOP protocols::abinitio::MembraneAbinitio::trial_smooth ( ) [inline, protected]

Referenced by do_stage4_cycles().

void protocols::abinitio::MembraneAbinitio::update_moves ( ) [protected, virtual]

References set_trials().

Referenced by set_defaults(), and set_moves().


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