Rosetta
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
protocols::topology_broker::RigidChunkClaimer Class Reference

defines a rigid part of structure... imagine a loop-relax application core structure is fixed via jumps and loops can move @detail the rigid chunk takes a definition of rigid regions in form of an instance of Loops (just taken as bunch of start-end residue numbers — here defining the rigid residues and not the loops). the rigid chunk to keep its integrity will need jumps, the claimer will reuse jumps if somebody else claims them, or submit in finalize_claims his own jumps, if not enough jumps are present. in "bExclusive_ mode" the RigidChunk will reclaim any jump claim that is useful and wihin the rigid region. (i.e., foreign claim is dissallowed but own claim with same residues is issued — in this way the claimer uses e.g., beta-sheet jumps, where they are suggested the input pose is used to initialize the rigid region ( via copying of internal coordinates ) e.g., a hole in the structure shouldn't pose a problem, since we basically copy the atom-tree. More...

#include <RigidChunkClaimer.hh>

Inheritance diagram for protocols::topology_broker::RigidChunkClaimer:
Inheritance graph
[legend]

Classes

class  CM_SuggestFixResidue
 
class  JumpCalculator
 helper class – computes if we have all jupms needed to rigidify the chosen chunk and generate more jumps if needed. More...
 

Public Member Functions

 RigidChunkClaimer ()
 
 RigidChunkClaimer (core::pose::Pose const &input_pose, loops::Loops rigid)
 
TopologyClaimerOP clone () const override
 clone it! More...
 
std::string type () const override
 type() is specifying the output name of the TopologyClaimer More...
 
void new_decoy () override
 a new decoy — random choices to be made ? make them here More...
 
void new_decoy (core::pose::Pose const &) override
 an input pose is given, i.e., a starting structure for resampling don't make random choices, base choices on given pose More...
 
void generate_claims (claims::DofClaims &) override
 generate DofClaims for BB More...
 
bool allow_claim (claims::DofClaim const &) override
 has to decline foreign BB claims for rigid regions, reclaim jumps where appropriate More...
 
void finalize_claims (claims::DofClaims &) override
 issue jump-claims for jumps yet missing to keep rigid regions fixed More...
 
void initialize_dofs (core::pose::Pose &, claims::DofClaims const &init_claims, claims::DofClaims &failed_to_init) override
 initialize BB residues and rigid-internal jumps from starting structure — copying atom-tree dofs More...
 
void switch_to_fullatom (core::pose::Pose &, utility::vector1< bool > bNeedToRepack) const override
 rigid-chunk can probably provide some side-chain info from full-length model More...
 
bool accept_declined_claim (claims::DofClaim const &was_declined) override
 will fail if a BB torsion claim of the rigid region has been declined More...
 
void manipulate_cut_bias (utility::vector1< core::Real > &cut_bias) override
 multiply your bias to this – if its zero don't change that, i.e., multiply only More...
 
void adjust_relax_movemap (core::kinematics::MoveMap &) const override
 disallow torsion moves in relax if bRigidInRelax More...
 
void receive_message (ClaimerMessage &cm) override
 
bool use_loops_from_threading_job () const
 Returns true if we are using loop definitions from ThreadingJob. More...
 
void use_loops_from_threading_job (bool setting)
 Sets whether we should use loop definitions from ThreadingJob. More...
 
- Public Member Functions inherited from protocols::topology_broker::TopologyClaimer
 ~TopologyClaimer () override=default
 Automatically generated virtual destructor for class deriving directly from VirtualBase. More...
 
 TopologyClaimer ()
 
 TopologyClaimer (weights::AbinitioMoverWeightOP weight)
 construct with weight-set ( how important is mover for different abinitio stages ? ) More...
 
TopologyClaimerCOP get_self_ptr () const
 self pointers More...
 
TopologyClaimerOP get_self_ptr ()
 
TopologyClaimerCAP get_self_weak_ptr () const
 
TopologyClaimerAP get_self_weak_ptr ()
 
virtual bool claimer_builds_own_fold_tree ()
 
virtual core::kinematics::FoldTreeOP get_fold_tree (core::pose::Pose &)
 in case a claimer has its own fold_tree. get_fold_tree() is called by the broker More...
 
virtual void build_fold_tree (core::pose::Pose &, core::kinematics::FoldTree &)
 
virtual void set_pose_from_broker (core::pose::Pose &)
 
virtual void read (std::istream &)
 read definition of Claimer from setup file, i.e., a CLAIMER <type> ... END_CLAIMER block More...
 
virtual void pre_process (core::pose::Pose &)
 
virtual void generate_sequence_claims (claims::DofClaims &)
 generate claims that affect the sequence of the pose More...
 
virtual void generate_symmetry_claims (claims::SymmetryClaims &)
 generate claims that affect the sequence of the pose More...
 
virtual void claim_accepted (claims::DofClaimOP my_claim)
 this claim of yours was accepted.... I so far haven't done anything with this... might go away. More...
 
virtual void add_constraints (core::pose::Pose &) const
 add constraints to pose... might make this stage dependent as with movers... More...
 
virtual core::fragment::FragSetCOP loop_frags (core::kinematics::MoveMap &) const
 return fragments that can be used for loop-sampling... unfortunately some loop-samplers need fragments, rather then fragmovers (e.g. short-loop closure since it remaps them on a short pose containing only the loop-residues. ) overloaded e.g., by LoopFragmentClaimer.. returns a movemap and fragset good for loop-sampling More...
 
virtual bool passes_filter (core::pose::Pose const &, abinitio::StageID, core::Real, std::ostringstream &)
 claimers can add movers to the RandomMover (Container). add your moves, make it dependent on stage if you want to. So far this is called only by abinitio... if you don't want to do anything special — don't overload this method! default: adds mover given by virtual call get_mover() with stage-dependent weight given by abinitio_mover_weight_ More...
 
virtual void add_mover (moves::RandomMover &, core::pose::Pose const &, abinitio::StageID, core::scoring::ScoreFunction const &, core::Real)
 claimers can add movers to the RandomMover (Container). add your moves, make it dependent on stage if you want to. So far this is called only by abinitio... if you don't want to do anything special — don't overload this method! default: adds mover given by virtual call get_mover() with stage-dependent weight given by abinitio_mover_weight_ More...
 
void set_mover_weight (weights::AbinitioMoverWeightOP wset)
 
weights::AbinitioMoverWeightmover_weight ()
 
void read_mover_weight (std::istream &is)
 read mover weight from Stream. - so far recognizes: LargeStage, SmallStage, SmoothStage, AllStage More...
 
void set_broker (TopologyBrokerCAP ptr)
 don't use this — it is called by TopologyBroker add_claim only More...
 
TopologyBroker const & broker () const
 return the broker we are collaborating with More...
 
std::string const & label () const
 
void set_label (std::string const &str)
 
virtual core::pose::PoseOP get_pose_from_claimer ()
 

Static Public Member Functions

static std::string _static_type_name ()
 

Protected Member Functions

void select_parts ()
 select sub-regions from rigid_core_, if skip-rate is specified More...
 
bool read_tag (std::string tag, std::istream &is) override
 
void set_defaults () override
 
void init_after_reading () override
 
- Protected Member Functions inherited from protocols::topology_broker::TopologyClaimer
virtual moves::MoverOP get_mover (core::pose::Pose const &) const
 what is your mover ... called by add_mover — overload this or add_mover if you have movers too supply More...
 

Private Types

typedef TopologyClaimer Parent
 
typedef utility::pointer::shared_ptr< JumpCalculatorJumpCalculatorOP
 

Private Attributes

core::pose::Pose input_pose_
 starting pose More...
 
core::pose::Pose centroid_input_pose_
 starting pose in centroid mode More...
 
loops::Loops rigid_core_
 regions that can be used for rigid core More...
 
loops::Loops current_rigid_core_
 if skip-rate is given (in loop-definitions) current_rigid_core_ will contain the current "choice" of regions... set in generate_claims() More...
 
claims::DofClaims current_jumps_
 jumps used this round — since generate_claims() More...
 
bool bExclusive_ = true
 flag used to specify if the rigid regions should really be treated exclusivity — i.e., are they really rigid ? More...
 
bool bAllowAdjacentJumps_ = false
 jump residues that are just next to rigid region are probably leading to impossibl fold-trees (not always – but most of the time) if false we don't allow such jumps More...
 
bool bUseInputPose_ = true
 use the pose in new_decoy( pose ) More...
 
bool bUseThreadingJobLoops_ = false
 use loop-definition from ThreadingJob More...
 
core::Size min_loop_size_ = 0
 min_loop_size for Threading-loops More...
 
core::Real random_grow_loops_by_ = 0.0
 same effect as OptionKeys::loops::random_grow_loops_by ]() for looprelax More...
 
bool bRigidInRelax_ = false
 keep this chunk rigid in relax — adjust movemap to keep BB-Torsions fixed... More...
 
JumpCalculatorOP current_jump_calculator_
 

Detailed Description

defines a rigid part of structure... imagine a loop-relax application core structure is fixed via jumps and loops can move @detail the rigid chunk takes a definition of rigid regions in form of an instance of Loops (just taken as bunch of start-end residue numbers — here defining the rigid residues and not the loops). the rigid chunk to keep its integrity will need jumps, the claimer will reuse jumps if somebody else claims them, or submit in finalize_claims his own jumps, if not enough jumps are present. in "bExclusive_ mode" the RigidChunk will reclaim any jump claim that is useful and wihin the rigid region. (i.e., foreign claim is dissallowed but own claim with same residues is issued — in this way the claimer uses e.g., beta-sheet jumps, where they are suggested the input pose is used to initialize the rigid region ( via copying of internal coordinates ) e.g., a hole in the structure shouldn't pose a problem, since we basically copy the atom-tree.

Member Typedef Documentation

◆ JumpCalculatorOP

◆ Parent

Constructor & Destructor Documentation

◆ RigidChunkClaimer() [1/2]

protocols::topology_broker::RigidChunkClaimer::RigidChunkClaimer ( )
default

◆ RigidChunkClaimer() [2/2]

protocols::topology_broker::RigidChunkClaimer::RigidChunkClaimer ( core::pose::Pose const &  input_pose,
loops::Loops  rigid 
)

Member Function Documentation

◆ _static_type_name()

static std::string protocols::topology_broker::RigidChunkClaimer::_static_type_name ( )
inlinestatic

Referenced by type().

◆ accept_declined_claim()

bool protocols::topology_broker::RigidChunkClaimer::accept_declined_claim ( claims::DofClaim const &  was_declined)
overridevirtual

will fail if a BB torsion claim of the rigid region has been declined

Reimplemented from protocols::topology_broker::TopologyClaimer.

References tr().

◆ adjust_relax_movemap()

void protocols::topology_broker::RigidChunkClaimer::adjust_relax_movemap ( core::kinematics::MoveMap mm) const
overridevirtual

disallow torsion moves in relax if bRigidInRelax

Reimplemented from protocols::topology_broker::TopologyClaimer.

References core::id::BB, bRigidInRelax_, rigid_core_, and protocols::loops::Loops::switch_movemap().

◆ allow_claim()

bool protocols::topology_broker::RigidChunkClaimer::allow_claim ( claims::DofClaim const &  foreign_claim)
overridevirtual

◆ clone()

TopologyClaimerOP protocols::topology_broker::RigidChunkClaimer::clone ( ) const
inlineoverridevirtual

◆ finalize_claims()

void protocols::topology_broker::RigidChunkClaimer::finalize_claims ( claims::DofClaims new_claims)
overridevirtual

issue jump-claims for jumps yet missing to keep rigid regions fixed

Reimplemented from protocols::topology_broker::TopologyClaimer.

References current_jump_calculator_, current_jumps_, and protocols::topology_broker::TopologyClaimer::label().

◆ generate_claims()

void protocols::topology_broker::RigidChunkClaimer::generate_claims ( claims::DofClaims new_claims)
overridevirtual

generate DofClaims for BB

@detail generate exclusive backbone claims for each residue of the rigid-chunk jumps are not exclusive and are added later in final_claims — want to reuse other jumps if possible

Reimplemented from protocols::topology_broker::TopologyClaimer.

References current_rigid_core_, protocols::topology_broker::claims::DofClaim::EXCLUSIVE, protocols::topology_broker::TopologyClaimer::get_self_weak_ptr(), protocols::topology_broker::TopologyClaimer::label(), protocols::loops::Loops::push_back(), and tr().

◆ init_after_reading()

void protocols::topology_broker::RigidChunkClaimer::init_after_reading ( )
overrideprotectedvirtual

◆ initialize_dofs()

void protocols::topology_broker::RigidChunkClaimer::initialize_dofs ( core::pose::Pose pose,
claims::DofClaims const &  init_claims,
claims::DofClaims failed_to_init 
)
overridevirtual

◆ manipulate_cut_bias()

void protocols::topology_broker::RigidChunkClaimer::manipulate_cut_bias ( utility::vector1< core::Real > &  cut_bias)
overridevirtual

multiply your bias to this – if its zero don't change that, i.e., multiply only

Reimplemented from protocols::topology_broker::TopologyClaimer.

References current_rigid_core_, and protocols::loops::Loops::transfer_to_residue_vector().

◆ new_decoy() [1/2]

void protocols::topology_broker::RigidChunkClaimer::new_decoy ( )
overridevirtual

a new decoy — random choices to be made ? make them here

Reimplemented from protocols::topology_broker::TopologyClaimer.

References bAllowAdjacentJumps_, current_jump_calculator_, current_jumps_, current_rigid_core_, and select_parts().

Referenced by new_decoy().

◆ new_decoy() [2/2]

void protocols::topology_broker::RigidChunkClaimer::new_decoy ( core::pose::Pose const &  )
overridevirtual

◆ read_tag()

bool protocols::topology_broker::RigidChunkClaimer::read_tag ( std::string  tag,
std::istream &  is 
)
overrideprotectedvirtual

◆ receive_message()

void protocols::topology_broker::RigidChunkClaimer::receive_message ( ClaimerMessage cm)
overridevirtual

◆ select_parts()

void protocols::topology_broker::RigidChunkClaimer::select_parts ( )
protected

◆ set_defaults()

void protocols::topology_broker::RigidChunkClaimer::set_defaults ( )
overrideprotectedvirtual

◆ switch_to_fullatom()

void protocols::topology_broker::RigidChunkClaimer::switch_to_fullatom ( core::pose::Pose pose,
utility::vector1< bool >  bNeedToRepack 
) const
overridevirtual

◆ type()

std::string protocols::topology_broker::RigidChunkClaimer::type ( ) const
inlineoverridevirtual

type() is specifying the output name of the TopologyClaimer

Implements protocols::topology_broker::TopologyClaimer.

References _static_type_name().

Referenced by init_after_reading(), and read_tag().

◆ use_loops_from_threading_job() [1/2]

bool protocols::topology_broker::RigidChunkClaimer::use_loops_from_threading_job ( ) const
inline

Returns true if we are using loop definitions from ThreadingJob.

References bUseThreadingJobLoops_.

◆ use_loops_from_threading_job() [2/2]

void protocols::topology_broker::RigidChunkClaimer::use_loops_from_threading_job ( bool  setting)
inline

Sets whether we should use loop definitions from ThreadingJob.

References bUseThreadingJobLoops_.

Member Data Documentation

◆ bAllowAdjacentJumps_

bool protocols::topology_broker::RigidChunkClaimer::bAllowAdjacentJumps_ = false
private

jump residues that are just next to rigid region are probably leading to impossibl fold-trees (not always – but most of the time) if false we don't allow such jumps

Referenced by protocols::topology_broker::RigidChunkClaimer::JumpCalculator::good_jump(), protocols::topology_broker::RigidChunkClaimer::JumpCalculator::irrelevant_jump(), and new_decoy().

◆ bExclusive_

bool protocols::topology_broker::RigidChunkClaimer::bExclusive_ = true
private

flag used to specify if the rigid regions should really be treated exclusivity — i.e., are they really rigid ?

changing this flag to false, will allow everything to move, but together with coordinate constraints this might yield a pose that is easier sampled ?

Referenced by allow_claim(), and read_tag().

◆ bRigidInRelax_

bool protocols::topology_broker::RigidChunkClaimer::bRigidInRelax_ = false
private

keep this chunk rigid in relax — adjust movemap to keep BB-Torsions fixed...

Referenced by adjust_relax_movemap(), and read_tag().

◆ bUseInputPose_

bool protocols::topology_broker::RigidChunkClaimer::bUseInputPose_ = true
private

use the pose in new_decoy( pose )

Referenced by new_decoy(), read_tag(), and set_defaults().

◆ bUseThreadingJobLoops_

bool protocols::topology_broker::RigidChunkClaimer::bUseThreadingJobLoops_ = false
private

use loop-definition from ThreadingJob

Referenced by new_decoy(), read_tag(), set_defaults(), and use_loops_from_threading_job().

◆ centroid_input_pose_

core::pose::Pose protocols::topology_broker::RigidChunkClaimer::centroid_input_pose_
private

starting pose in centroid mode

Referenced by init_after_reading(), initialize_dofs(), new_decoy(), and RigidChunkClaimer().

◆ current_jump_calculator_

JumpCalculatorOP protocols::topology_broker::RigidChunkClaimer::current_jump_calculator_
private

◆ current_jumps_

claims::DofClaims protocols::topology_broker::RigidChunkClaimer::current_jumps_
private

jumps used this round — since generate_claims()

Referenced by allow_claim(), finalize_claims(), and new_decoy().

◆ current_rigid_core_

loops::Loops protocols::topology_broker::RigidChunkClaimer::current_rigid_core_
private

if skip-rate is given (in loop-definitions) current_rigid_core_ will contain the current "choice" of regions... set in generate_claims()

Referenced by allow_claim(), generate_claims(), initialize_dofs(), manipulate_cut_bias(), new_decoy(), receive_message(), select_parts(), and switch_to_fullatom().

◆ input_pose_

core::pose::Pose protocols::topology_broker::RigidChunkClaimer::input_pose_
private

◆ min_loop_size_

core::Size protocols::topology_broker::RigidChunkClaimer::min_loop_size_ = 0
private

min_loop_size for Threading-loops

Referenced by new_decoy(), read_tag(), and set_defaults().

◆ random_grow_loops_by_

core::Real protocols::topology_broker::RigidChunkClaimer::random_grow_loops_by_ = 0.0
private

same effect as OptionKeys::loops::random_grow_loops_by ]() for looprelax

Referenced by read_tag(), select_parts(), and set_defaults().

◆ rigid_core_

loops::Loops protocols::topology_broker::RigidChunkClaimer::rigid_core_
private

regions that can be used for rigid core

Referenced by adjust_relax_movemap(), init_after_reading(), new_decoy(), read_tag(), and select_parts().


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