Rosetta Protocols  2014.35
Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::antibody::design::AntibodySeqDesignMover Class Reference

Designs antibody CDR structures using a variety of different methods. Main methods involve using cluster-based sequence probability statistics and conservative design strategies to limit unknown structural effects caused by aggressive design. Uses North_AHO numbering and cluster-based design. Part of Rosetta Antibody Designer. More...

#include <AntibodySeqDesignMover.hh>

Public Member Functions

 AntibodySeqDesignMover (AntibodyInfoOP ab_info)
 
 AntibodySeqDesignMover (AntibodyInfoOP ab_info, std::string instruction_path)
 
virtual ~AntibodySeqDesignMover ()
 
virtual std::string get_name () const
 Each derived class must specify its name. The class name. More...
 
void set_cdr (CDRNameEnum const cdr, const bool setting)
 Set to design CDRs. Default is all of them true. More...
 
void set_cdr_only (CDRNameEnum const cdr, bool const setting)
 Set to model only one cdr, or all others but one. More...
 
void set_cdr_range (CDRNameEnum const cdr_start, CDRNameEnum const cdr_end, bool const setting)
 Set a range of CDRs. More...
 
void set_neighbor_detection_dis (core::Real const neighbor_distance)
 Repack neighbors of CDR's being designed within this distance. More...
 
void set_scorefxn (core::scoring::ScoreFunctionCOP scorefxn)
 
void set_rounds (core::Size const rounds)
 
void set_use_conservative_design (CDRNameEnum const cdr, bool const setting)
 Set a conservative method for design, including only using general conserved aminoacids, and specific amino acids for identified turn types. Default true for H3. Any probabilities not found for a particular cluster will result in conservative design. More...
 
void set_use_conservative_design_range (CDRNameEnum const cdr_start, CDRNameEnum const cdr_end, bool const setting)
 
void set_use_turn_conservation (bool const setting)
 Try to conserve turn structure using known turn-based conservative mutations during conservative design. More...
 
void set_probability_data_cutoff (core::Size const cutoff)
 Use conservative mutations (or alternative method) instead of using cluster sequence probabilities for design if the number of sequences in the particular CDR's cluster probability data is lower than this cutoff. Default is 10. This is why we try and stay in type 1 clusters during graft. More...
 
void set_zero_prob_weight_at (core::Real const weight)
 Use these weights during probabilistic design for data that is normally zero. More...
 
void no_design_proline (bool const setting)
 keep proline fixed. Maybe should be not an option - and just do it. More...
 
void set_design_method (DesignTypeEnum const design_method)
 Type of design method used. Acceptable options - relaxed_design, fixbb, flxbb. More...
 
void set_basic_design (bool const setting)
 Sets the designer to not use our fancy taskops and statistics. Only use basic design with all residues turned on. Use for benchmarking. More...
 
void set_use_cluster_constraints (bool const setting)
 Should we use the cdr cluster CircularHarmonic constraints? Default true - this is mainly used for benchmarking. More...
 
virtual void apply (core::pose::Pose &pose)
 
- 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...
 
virtual core::Real last_proposal_density_ratio ()
 
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...
 
virtual void parse_my_tag (TagCOP tag, basic::datacache::DataMap &data, Filters_map const &filters, Movers_map const &movers, Pose const &pose)
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. 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

std::map< core::Size, std::map
< core::chemical::AA,
core::Real > > 
setup_probability_data (core::pose::Pose &pose)
 Reads from database, gets prob_set for ResidueProbDesignOperation + sets cdrs_wo_prob_data_. More...
 
core::pack::task::TaskFactoryOP setup_task_factory (core::pose::Pose &pose)
 Setup the Designer's taskfactory. More...
 
vector1< core::Sizeget_conservative_design_residues (core::pose::Pose &pose)
 Get a list of residues where conservative design will be used. More...
 
void disable_design_cdrs (core::pack::task::TaskFactoryOP tf, core::pose::Pose &pose)
 Turns off CDRs for design that are set to off. More...
 
void disable_design_cdr (CDRNameEnum cdr, core::pack::task::TaskFactoryOP tf, core::pose::Pose &pose)
 
void setup_constraints (core::pose::Pose &pose)
 Set cluster-based harmonic dihedral constraints if known cluster or set coordinate constraints. More...
 
bool cdr_has_constraints (core::pose::Pose const &pose, CDRNameEnum const cdr, std::string const constraint_type)
 
void read_command_line_options ()
 
void read_instructions (std::string instruction_path)
 Call DesignInstructionParser to determine settings for the design run. More...
 
void remove_conservative_design_residues_from_prob_set (vector1< core::Size > const &positions, std::map< core::Size, std::map< core::chemical::AA, core::Real > > &prob_set)
 Removes residues from prob_set from instruction settings. Used so that we speed task generation instead of overwriting these residues. More...
 

Private Attributes

AntibodyInfoOP ab_info_
 
DesignTypeEnum design_method_
 
ScoreFunctionOP scorefxn_
 
core::Real zero_prob_weight_
 
core::Real neighbor_dis_
 
core::Size prob_cutoff_
 
core::Size rounds_
 
bool turn_conservation_
 
bool no_design_proline_
 
bool basic_design_
 
bool use_cluster_constraints_
 
std::map< CDRNameEnum,
CDRDesignInstructions
instructions_
 
std::string instruction_path_
 

Additional Inherited Members

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

Designs antibody CDR structures using a variety of different methods. Main methods involve using cluster-based sequence probability statistics and conservative design strategies to limit unknown structural effects caused by aggressive design. Uses North_AHO numbering and cluster-based design. Part of Rosetta Antibody Designer.

Constructor & Destructor Documentation

protocols::antibody::design::AntibodySeqDesignMover::AntibodySeqDesignMover ( AntibodyInfoOP  ab_info)
protocols::antibody::design::AntibodySeqDesignMover::AntibodySeqDesignMover ( AntibodyInfoOP  ab_info,
std::string  instruction_path 
)
protocols::antibody::design::AntibodySeqDesignMover::~AntibodySeqDesignMover ( )
virtual

Member Function Documentation

void protocols::antibody::design::AntibodySeqDesignMover::apply ( core::pose::Pose pose)
virtual
bool protocols::antibody::design::AntibodySeqDesignMover::cdr_has_constraints ( core::pose::Pose const &  pose,
CDRNameEnum const  cdr,
std::string const  constraint_type 
)
private

The CDR have constraints of this type. A bit hacky. Used for going form graftdesigner to this, without regenerating the 'wrong' constraints.

probably only works 'correctly' for dihedral/coordinate constraints. THe function assumes that constraints were set for the whole CDR.

References core::pose::Pose::constraint_set(), residues, and type.

void protocols::antibody::design::AntibodySeqDesignMover::disable_design_cdr ( CDRNameEnum  cdr,
core::pack::task::TaskFactoryOP  tf,
core::pose::Pose pose 
)
private
void protocols::antibody::design::AntibodySeqDesignMover::disable_design_cdrs ( core::pack::task::TaskFactoryOP  tf,
core::pose::Pose pose 
)
private

Turns off CDRs for design that are set to off.

References protocols::antibody::CDRNameEnum_total, and design.

vector1< core::Size > protocols::antibody::design::AntibodySeqDesignMover::get_conservative_design_residues ( core::pose::Pose pose)
private

Get a list of residues where conservative design will be used.

References protocols::antibody::CDRNameEnum_start, protocols::antibody::CDRNameEnum_total, end, and protocols::loops::start.

std::string protocols::antibody::design::AntibodySeqDesignMover::get_name ( ) const
virtual

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

Implements protocols::moves::Mover.

void protocols::antibody::design::AntibodySeqDesignMover::no_design_proline ( bool const  setting)

keep proline fixed. Maybe should be not an option - and just do it.

void protocols::antibody::design::AntibodySeqDesignMover::read_command_line_options ( )
private
void protocols::antibody::design::AntibodySeqDesignMover::read_instructions ( std::string  instruction_path)
private

Call DesignInstructionParser to determine settings for the design run.

References parser, and protocols::antibody::design::DesignInstructionsParser::read_cdr_design_instructions().

void protocols::antibody::design::AntibodySeqDesignMover::remove_conservative_design_residues_from_prob_set ( vector1< core::Size > const &  positions,
std::map< core::Size, std::map< core::chemical::AA, core::Real > > &  prob_set 
)
private

Removes residues from prob_set from instruction settings. Used so that we speed task generation instead of overwriting these residues.

References protocols::antibody::TR.

void protocols::antibody::design::AntibodySeqDesignMover::set_basic_design ( bool const  setting)

Sets the designer to not use our fancy taskops and statistics. Only use basic design with all residues turned on. Use for benchmarking.

void protocols::antibody::design::AntibodySeqDesignMover::set_cdr ( CDRNameEnum const  cdr,
const bool  setting 
)

Set to design CDRs. Default is all of them true.

void protocols::antibody::design::AntibodySeqDesignMover::set_cdr_only ( CDRNameEnum const  cdr,
bool const  setting 
)

Set to model only one cdr, or all others but one.

References protocols::antibody::CDRNameEnum_start, and protocols::antibody::CDRNameEnum_total.

void protocols::antibody::design::AntibodySeqDesignMover::set_cdr_range ( CDRNameEnum const  cdr_start,
CDRNameEnum const  cdr_end,
bool const  setting 
)

Set a range of CDRs.

References protocols::antibody::cdr_end.

void protocols::antibody::design::AntibodySeqDesignMover::set_design_method ( DesignTypeEnum const  design_method)

Type of design method used. Acceptable options - relaxed_design, fixbb, flxbb.

void protocols::antibody::design::AntibodySeqDesignMover::set_neighbor_detection_dis ( core::Real const  neighbor_distance)

Repack neighbors of CDR's being designed within this distance.

void protocols::antibody::design::AntibodySeqDesignMover::set_probability_data_cutoff ( core::Size const  cutoff)

Use conservative mutations (or alternative method) instead of using cluster sequence probabilities for design if the number of sequences in the particular CDR's cluster probability data is lower than this cutoff. Default is 10. This is why we try and stay in type 1 clusters during graft.

void protocols::antibody::design::AntibodySeqDesignMover::set_rounds ( core::Size const  rounds)
void protocols::antibody::design::AntibodySeqDesignMover::set_scorefxn ( core::scoring::ScoreFunctionCOP  scorefxn)
void protocols::antibody::design::AntibodySeqDesignMover::set_use_cluster_constraints ( bool const  setting)

Should we use the cdr cluster CircularHarmonic constraints? Default true - this is mainly used for benchmarking.

void protocols::antibody::design::AntibodySeqDesignMover::set_use_conservative_design ( CDRNameEnum const  cdr,
bool const  setting 
)

Set a conservative method for design, including only using general conserved aminoacids, and specific amino acids for identified turn types. Default true for H3. Any probabilities not found for a particular cluster will result in conservative design.

void protocols::antibody::design::AntibodySeqDesignMover::set_use_conservative_design_range ( CDRNameEnum const  cdr_start,
CDRNameEnum const  cdr_end,
bool const  setting 
)
void protocols::antibody::design::AntibodySeqDesignMover::set_use_turn_conservation ( bool const  setting)

Try to conserve turn structure using known turn-based conservative mutations during conservative design.

void protocols::antibody::design::AntibodySeqDesignMover::set_zero_prob_weight_at ( core::Real const  weight)

Use these weights during probabilistic design for data that is normally zero.

void protocols::antibody::design::AntibodySeqDesignMover::setup_constraints ( core::pose::Pose pose)
private

Set cluster-based harmonic dihedral constraints if known cluster or set coordinate constraints.

References core::scoring::constraints::add_coordinate_constraints(), protocols::antibody::add_harmonic_cluster_constraint(), protocols::antibody::CDRNameEnum_total, and protocols::antibody::TR.

std::map< core::Size, std::map< core::chemical::AA, core::Real > > protocols::antibody::design::AntibodySeqDesignMover::setup_probability_data ( core::pose::Pose pose)
private

Reads from database, gets prob_set for ResidueProbDesignOperation + sets cdrs_wo_prob_data_.

References protocols::antibody::design::AntibodyDatabaseManager::load_cdr_design_data().

core::pack::task::TaskFactoryOP protocols::antibody::design::AntibodySeqDesignMover::setup_task_factory ( core::pose::Pose pose)
private

Member Data Documentation

AntibodyInfoOP protocols::antibody::design::AntibodySeqDesignMover::ab_info_
private
bool protocols::antibody::design::AntibodySeqDesignMover::basic_design_
private
DesignTypeEnum protocols::antibody::design::AntibodySeqDesignMover::design_method_
private
std::string protocols::antibody::design::AntibodySeqDesignMover::instruction_path_
private
std::map<CDRNameEnum, CDRDesignInstructions> protocols::antibody::design::AntibodySeqDesignMover::instructions_
private
core::Real protocols::antibody::design::AntibodySeqDesignMover::neighbor_dis_
private
bool protocols::antibody::design::AntibodySeqDesignMover::no_design_proline_
private
core::Size protocols::antibody::design::AntibodySeqDesignMover::prob_cutoff_
private
core::Size protocols::antibody::design::AntibodySeqDesignMover::rounds_
private
ScoreFunctionOP protocols::antibody::design::AntibodySeqDesignMover::scorefxn_
private
bool protocols::antibody::design::AntibodySeqDesignMover::turn_conservation_
private
bool protocols::antibody::design::AntibodySeqDesignMover::use_cluster_constraints_
private
core::Real protocols::antibody::design::AntibodySeqDesignMover::zero_prob_weight_
private

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