Rosetta
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
protocols::flxbb::LayerDesignOperation Class Reference

#include <LayerDesignOperation.hh>

Inheritance diagram for protocols::flxbb::LayerDesignOperation:
Inheritance graph
[legend]

Public Types

enum  LayerOperationType { DESIGN , NO_DESIGN , OMIT }
 
enum  LayerSpecificationType { DESIGNABLE , PACKABLE , FIXED }
 
typedef std::string String
 
typedef core::Real Real
 
typedef core::pose::Pose Pose
 
typedef core::pack::task::PackerTask PackerTask
 
typedef core::pack::task::operation::TaskOperation TaskOperation
 
typedef core::pack::task::operation::TaskOperationOP TaskOperationOP
 
typedef TaskOperation parent
 
typedef utility::tag::TagCOP TagCOP
 
typedef std::map< std::string, TaskOperationOPTaskLayers
 
typedef std::pair< std::string, TaskOperationOPTaskLayer
 
typedef std::map< std::string, std::string > LayerDefinitions
 
typedef std::pair< std::string, std::string > LayerDefinition
 
typedef std::map< std::string, LayerDefinitionsLayerResidues
 
typedef std::pair< std::string, LayerDefinitionsLayer
 
- Public Types inherited from core::pack::task::operation::TaskOperation
typedef utility::tag::TagCOP TagCOP
 
typedef basic::datacache::DataMap DataMap
 
typedef pose::Pose Pose
 

Public Member Functions

 LayerDesignOperation ()
 default constructor More...
 
 LayerDesignOperation (bool dsgn_core, bool dsgn_boundary, bool dsgn_surface)
 value constructor More...
 
 LayerDesignOperation (bool dsgn_core, bool dsgn_boundary, bool dsgn_surface, bool Nt, bool Ct, Real core_score, Real surf_score, std::string coreAA, std::string boundaryAA, std::string surfaceAA)
 value constructor More...
 
 LayerDesignOperation (LayerDesignOperation const &rval)
 Copy constructor. More...
 
 ~LayerDesignOperation () override
 destructor More...
 
TaskOperationOP clone () const override
 make clone More...
 
void add_layer (std::string const &layer_name, core::pack::task::operation::TaskOperationOP task, LayerOperationType const operation, LayerSpecificationType const specification)
 add a new layer which will be created based on a task operation More...
 
std::string const & layer_residues (std::string const &layer_name, std::string const &ss_name) const
 gets the residues allowed for a given secondary structure in a given layer More...
 
void set_layer_residues (std::string const &layer_name, std::string const &ss_name, std::string const &residues)
 sets residues allowed for a particular secondary structure in the given layer More...
 
void copy_layer_residues (std::string const &src_layer, std::string const &dest_layer)
 copies residues allowed from src to dest More...
 
void set_layer_operation (std::string const &layer_name, LayerOperationType const operation)
 sets layer operation More...
 
void set_layer_specification (std::string const &layer_name, LayerSpecificationType const specification)
 sets layer specification More...
 
void design_layer (bool const dsgn_core, bool const dsgn_boundary, bool const dsgn_surface)
 layer to be designed in internal SRBL object More...
 
void sasa_surface (Real const r, String const &ss="")
 accessible surface for evaluating residues are in surface or not More...
 
void sasa_core (Real const r, String const &ss="")
 accessible surface for evaluating residues are in core or not More...
 
void pore_radius (Real ps)
 set pore radius for colculating asa More...
 
void set_verbose (bool const b)
 set verbose More...
 
void set_restrict_restypes (bool const b)
 set restrict_restypes More...
 
void set_use_sidechain_neighbors (bool const value)
 Set whether to use sidechain neighbors to determine core/boundary/surface (default=false) More...
 
void set_sc_neighbor_dist_midpoint (core::Real const &value)
 Set the midpoint of the sigmoidal distance falloff for the sidechain neighbors method. More...
 
void set_sc_neighbor_denominator (core::Real const &value)
 Set the factor by which neighbor counts are divided when using the sidechain neighbors method. More...
 
void set_sc_neighbor_angle_shift_factor (core::Real const &value)
 Set a parameter in the calculation that the sidechain neighbors algorithm uses. More...
 
void set_sc_neighbor_angle_exponent (core::Real const &value)
 Set another parameter (the angle exponent) in the calculation that the sidechain neighbors algorithm uses. More...
 
void set_sc_neighbor_dist_exponent (core::Real const &value)
 Set another parameter (the distance exponent) in the calculation that the sidechain neighbors algorithm uses. More...
 
void set_design_layers (utility::vector1< std::string > const &layers)
 sets names of layers to design More...
 
void use_original_seq ()
 use original sequence for not designed layer More...
 
void make_pymol_script (bool value)
 make pymol scripts showing the different layers More...
 
void parse_tag (TagCOP tag, DataMap &) override
 Used to parse an xml-like tag to load parameters and properties. More...
 
void parse_layer_tag (TagCOP layer_tag, DataMap &datamap)
 
void parse_layer_secstruct_tag (TagCOP secstruct_tag, DataMap &datamap, std::string const &layer_name)
 
void set_ignore_pikaa_natro (bool const val)
 Sets whether residues set with PIKAA and NATRO in previously-applied resfiles are ignored. More...
 
bool ignore_pikaa_natro () const
 Returns whether residues set with PIKAA and NATRO in previously-applied resfiles are ignored. More...
 
void apply (Pose const &pose, PackerTask &task) const override
 apply More...
 
- Public Member Functions inherited from core::pack::task::operation::TaskOperation
 ~TaskOperation () override
 
virtual void provide_citation_info (basic::citation_manager::CitationCollectionList &) const
 Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More...
 

Static Public Member Functions

static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 
static std::string keyname ()
 

Static Public Attributes

static utility::vector1< std::string > const SS_TYPES = { "all", "Helix", "HelixCapping", "HelixStart", "Loop", "Strand" }
 

Private Member Functions

utility::vector1< bool > get_restrictions (std::string const &layer, std::string const &default_layer, std::string const &ss_type, char const current_aa) const
 gets a list of allowed amino acids, and includes the current amino acid in addition to those allowed by layer More...
 
utility::vector1< bool > get_restrictions (std::string const &layer, std::string const &, std::string const &ss_type) const
 
void set_default_layer_residues ()
 
void set_layer_residues (std::string const &layer_name, std::string const &ss_name, std::string const &residues, LayerResidues &layer_residues)
 
void set_use_symmetry (bool const val)
 Set whether this TaskOperation uses a whole, symmetric pose to define layers (true) or just the asymmetric unit (false). Default is true. More...
 
bool use_symmetry () const
 Get whether this TaskOperation uses a whole, symmetric pose to define layers (true) or just the asymmetric unit (false). More...
 
std::string pos2select (utility::vector1< core::Size > const &pos) const
 utility function to transform a vector of position into a pymol selection command More...
 
void write_pymol_script (Pose const &pos, core::select::util::SelectResiduesByLayerOP srbl, std::map< std::string, utility::vector1< bool > > const &layer_specification, bool las_ligand, std::string const &filename) const
 write a pymol command with the different layers as selections More...
 

Private Attributes

bool add_helix_capping_
 add helix capping ? More...
 
bool use_original_
 use original sequence for not designed layer ? More...
 
bool repack_non_designed_residues_
 
bool verbose_
 
bool restrict_restypes_
 
bool make_pymol_script_
 
LayerResidues layer_residues_
 
bool ignore_pikaa_natro_
 Should residues for which PIKAA or NATRO information was defined in a previously-applied resfile be ignored by LayerDesign? Default is now FALSE. More...
 
std::map< std::string, bool > design_layer_
 
std::map< std::string, LayerSpecificationTypelayer_specification_
 
std::map< std::string, LayerOperationTypelayer_operation_
 
TaskLayers task_layers_
 
core::select::util::SelectResiduesByLayerOP srbl_
 
protocols::parser::BluePrintOP blueprint_
 
bool use_symmetry_
 Should LayerDesign work with symmetry? Default false. More...
 

Member Typedef Documentation

◆ Layer

◆ LayerDefinition

typedef std::pair< std::string, std::string > protocols::flxbb::LayerDesignOperation::LayerDefinition

◆ LayerDefinitions

typedef std::map< std::string, std::string > protocols::flxbb::LayerDesignOperation::LayerDefinitions

◆ LayerResidues

◆ PackerTask

◆ parent

◆ Pose

◆ Real

◆ String

◆ TagCOP

typedef utility::tag::TagCOP protocols::flxbb::LayerDesignOperation::TagCOP

◆ TaskLayer

◆ TaskLayers

◆ TaskOperation

◆ TaskOperationOP

Member Enumeration Documentation

◆ LayerOperationType

Enumerator
DESIGN 
NO_DESIGN 
OMIT 

◆ LayerSpecificationType

Enumerator
DESIGNABLE 
PACKABLE 
FIXED 

Constructor & Destructor Documentation

◆ LayerDesignOperation() [1/4]

protocols::flxbb::LayerDesignOperation::LayerDesignOperation ( )

default constructor

References set_default_layer_residues().

◆ LayerDesignOperation() [2/4]

protocols::flxbb::LayerDesignOperation::LayerDesignOperation ( bool  dsgn_core,
bool  dsgn_boundary,
bool  dsgn_surface 
)

value constructor

References design_layer(), and set_default_layer_residues().

◆ LayerDesignOperation() [3/4]

protocols::flxbb::LayerDesignOperation::LayerDesignOperation ( bool  dsgn_core,
bool  dsgn_boundary,
bool  dsgn_surface,
bool  Nt,
bool  Ct,
Real  core_score,
Real  surf_score,
std::string  coreAA,
std::string  boundaryAA,
std::string  surfaceAA 
)

◆ LayerDesignOperation() [4/4]

protocols::flxbb::LayerDesignOperation::LayerDesignOperation ( LayerDesignOperation const &  rval)
default

Copy constructor.

◆ ~LayerDesignOperation()

protocols::flxbb::LayerDesignOperation::~LayerDesignOperation ( )
overridedefault

destructor

Member Function Documentation

◆ add_layer()

void protocols::flxbb::LayerDesignOperation::add_layer ( std::string const &  layer_name,
core::pack::task::operation::TaskOperationOP  task,
LayerOperationType const  operation,
LayerSpecificationType const  specification 
)

add a new layer which will be created based on a task operation

layer to be designed

References design_layer_, layer_operation_, layer_residues_, layer_specification_, and task_layers_.

Referenced by parse_layer_tag().

◆ apply()

void protocols::flxbb::LayerDesignOperation::apply ( Pose const &  pose,
PackerTask task 
) const
overridevirtual

◆ clone()

core::pack::task::operation::TaskOperationOP protocols::flxbb::LayerDesignOperation::clone ( ) const
overridevirtual

make clone

clone

Implements core::pack::task::operation::TaskOperation.

◆ copy_layer_residues()

void protocols::flxbb::LayerDesignOperation::copy_layer_residues ( std::string const &  src_layer,
std::string const &  dest_layer 
)

copies residues allowed from src to dest

References layer_residues_.

Referenced by parse_layer_secstruct_tag().

◆ design_layer()

void protocols::flxbb::LayerDesignOperation::design_layer ( bool const  dsgn_core,
bool const  dsgn_boundary,
bool const  dsgn_surface 
)

layer to be designed in internal SRBL object

layer to be designed

References srbl_.

Referenced by LayerDesignOperation().

◆ get_restrictions() [1/2]

utility::vector1< bool > protocols::flxbb::LayerDesignOperation::get_restrictions ( std::string const &  layer,
std::string const &  ,
std::string const &  ss_type 
) const
private

◆ get_restrictions() [2/2]

utility::vector1< bool > protocols::flxbb::LayerDesignOperation::get_restrictions ( std::string const &  layer,
std::string const &  default_layer,
std::string const &  ss_type,
char const  current_aa 
) const
private

gets a list of allowed amino acids, and includes the current amino acid in addition to those allowed by layer

Referenced by apply().

◆ ignore_pikaa_natro()

bool protocols::flxbb::LayerDesignOperation::ignore_pikaa_natro ( ) const
inline

Returns whether residues set with PIKAA and NATRO in previously-applied resfiles are ignored.

Default behaviour is now FALSE to preserve commutativity.

References ignore_pikaa_natro_.

Referenced by apply().

◆ keyname()

static std::string protocols::flxbb::LayerDesignOperation::keyname ( )
inlinestatic

Referenced by provide_xml_schema().

◆ layer_residues()

std::string const & protocols::flxbb::LayerDesignOperation::layer_residues ( std::string const &  layer_name,
std::string const &  ss_name 
) const

gets the residues allowed for a given secondary structure in a given layer

References layer_residues_.

Referenced by set_layer_residues().

◆ make_pymol_script()

void protocols::flxbb::LayerDesignOperation::make_pymol_script ( bool  value)
inline

make pymol scripts showing the different layers

References make_pymol_script_.

Referenced by parse_tag().

◆ parse_layer_secstruct_tag()

void protocols::flxbb::LayerDesignOperation::parse_layer_secstruct_tag ( TagCOP  secstruct_tag,
DataMap datamap,
std::string const &  layer_name 
)

◆ parse_layer_tag()

void protocols::flxbb::LayerDesignOperation::parse_layer_tag ( TagCOP  layer_tag,
DataMap datamap 
)

◆ parse_tag()

void protocols::flxbb::LayerDesignOperation::parse_tag ( TagCOP  tag,
DataMap  
)
overridevirtual

◆ pore_radius()

void protocols::flxbb::LayerDesignOperation::pore_radius ( Real  ps)

set pore radius for colculating asa

References srbl_.

◆ pos2select()

std::string protocols::flxbb::LayerDesignOperation::pos2select ( utility::vector1< core::Size > const &  pos) const
private

utility function to transform a vector of position into a pymol selection command

References protocols::kinmatch::str(), and core::id::to_string().

Referenced by write_pymol_script().

◆ provide_xml_schema()

void protocols::flxbb::LayerDesignOperation::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static

◆ sasa_core()

void protocols::flxbb::LayerDesignOperation::sasa_core ( Real const  r,
String const &  ss = "" 
)

accessible surface for evaluating residues are in core or not

References srbl_.

◆ sasa_surface()

void protocols::flxbb::LayerDesignOperation::sasa_surface ( Real const  r,
String const &  ss = "" 
)

accessible surface for evaluating residues are in surface or not

References srbl_.

◆ set_default_layer_residues()

void protocols::flxbb::LayerDesignOperation::set_default_layer_residues ( )
private

◆ set_design_layers()

void protocols::flxbb::LayerDesignOperation::set_design_layers ( utility::vector1< std::string > const &  layers)

sets names of layers to design

References design_layer_.

Referenced by parse_tag().

◆ set_ignore_pikaa_natro()

void protocols::flxbb::LayerDesignOperation::set_ignore_pikaa_natro ( bool const  val)
inline

Sets whether residues set with PIKAA and NATRO in previously-applied resfiles are ignored.

Default behaviour is now FALSE to preserve commutativity.

References ignore_pikaa_natro_, and protocols::hybridization::val.

Referenced by parse_tag().

◆ set_layer_operation()

void protocols::flxbb::LayerDesignOperation::set_layer_operation ( std::string const &  layer_name,
LayerOperationType const  operation 
)

sets layer operation

References layer_operation_.

Referenced by parse_layer_secstruct_tag().

◆ set_layer_residues() [1/2]

void protocols::flxbb::LayerDesignOperation::set_layer_residues ( std::string const &  layer_name,
std::string const &  ss_name,
std::string const &  residues 
)

sets residues allowed for a particular secondary structure in the given layer

References layer_residues_.

Referenced by parse_layer_secstruct_tag(), and parse_layer_tag().

◆ set_layer_residues() [2/2]

void protocols::flxbb::LayerDesignOperation::set_layer_residues ( std::string const &  layer_name,
std::string const &  ss_name,
std::string const &  residues,
LayerResidues layer_residues 
)
private

◆ set_layer_specification()

void protocols::flxbb::LayerDesignOperation::set_layer_specification ( std::string const &  layer_name,
LayerSpecificationType const  specification 
)

sets layer specification

References layer_specification_.

Referenced by parse_layer_secstruct_tag().

◆ set_restrict_restypes()

void protocols::flxbb::LayerDesignOperation::set_restrict_restypes ( bool const  b)
inline

set restrict_restypes

References protocols::match::upstream::b, and restrict_restypes_.

Referenced by parse_tag().

◆ set_sc_neighbor_angle_exponent()

void protocols::flxbb::LayerDesignOperation::set_sc_neighbor_angle_exponent ( core::Real const &  value)

Set another parameter (the angle exponent) in the calculation that the sidechain neighbors algorithm uses.

See core::select::util::SelectResiduesByLayer class for details.

References srbl_.

Referenced by parse_tag().

◆ set_sc_neighbor_angle_shift_factor()

void protocols::flxbb::LayerDesignOperation::set_sc_neighbor_angle_shift_factor ( core::Real const &  value)

Set a parameter in the calculation that the sidechain neighbors algorithm uses.

See core::select::util::SelectResiduesByLayer class for details.

References srbl_.

Referenced by parse_tag().

◆ set_sc_neighbor_denominator()

void protocols::flxbb::LayerDesignOperation::set_sc_neighbor_denominator ( core::Real const &  value)

Set the factor by which neighbor counts are divided when using the sidechain neighbors method.

References srbl_.

Referenced by parse_tag().

◆ set_sc_neighbor_dist_exponent()

void protocols::flxbb::LayerDesignOperation::set_sc_neighbor_dist_exponent ( core::Real const &  value)

Set another parameter (the distance exponent) in the calculation that the sidechain neighbors algorithm uses.

See core::select::util::SelectResiduesByLayer class for details.

References srbl_.

Referenced by parse_tag().

◆ set_sc_neighbor_dist_midpoint()

void protocols::flxbb::LayerDesignOperation::set_sc_neighbor_dist_midpoint ( core::Real const &  value)

Set the midpoint of the sigmoidal distance falloff for the sidechain neighbors method.

References srbl_.

Referenced by parse_tag().

◆ set_use_sidechain_neighbors()

void protocols::flxbb::LayerDesignOperation::set_use_sidechain_neighbors ( bool const  value)

Set whether to use sidechain neighbors to determine core/boundary/surface (default=false)

References srbl_.

Referenced by parse_tag().

◆ set_use_symmetry()

void protocols::flxbb::LayerDesignOperation::set_use_symmetry ( bool const  val)
inlineprivate

Set whether this TaskOperation uses a whole, symmetric pose to define layers (true) or just the asymmetric unit (false). Default is true.

References use_symmetry_, and protocols::hybridization::val.

Referenced by parse_tag().

◆ set_verbose()

void protocols::flxbb::LayerDesignOperation::set_verbose ( bool const  b)
inline

set verbose

References protocols::match::upstream::b, and verbose_.

Referenced by parse_tag().

◆ use_original_seq()

void protocols::flxbb::LayerDesignOperation::use_original_seq ( )
inline

use original sequence for not designed layer

References use_original_.

◆ use_symmetry()

bool protocols::flxbb::LayerDesignOperation::use_symmetry ( ) const
inlineprivate

Get whether this TaskOperation uses a whole, symmetric pose to define layers (true) or just the asymmetric unit (false).

References use_symmetry_.

Referenced by apply().

◆ write_pymol_script()

void protocols::flxbb::LayerDesignOperation::write_pymol_script ( Pose const &  pos,
core::select::util::SelectResiduesByLayerOP  srbl,
std::map< std::string, utility::vector1< bool > > const &  layer_specification,
bool  las_ligand,
std::string const &  filename 
) const
private

write a pymol command with the different layers as selections

References core::pose::Pose::dump_pdb(), protocols::abinitio::filename(), pos2select(), core::pose::Pose::size(), and protocols::TR().

Referenced by apply().

Member Data Documentation

◆ add_helix_capping_

bool protocols::flxbb::LayerDesignOperation::add_helix_capping_
private

add helix capping ?

Referenced by apply().

◆ blueprint_

protocols::parser::BluePrintOP protocols::flxbb::LayerDesignOperation::blueprint_
private

Referenced by apply(), and parse_tag().

◆ design_layer_

std::map< std::string, bool > protocols::flxbb::LayerDesignOperation::design_layer_
private

◆ ignore_pikaa_natro_

bool protocols::flxbb::LayerDesignOperation::ignore_pikaa_natro_
private

Should residues for which PIKAA or NATRO information was defined in a previously-applied resfile be ignored by LayerDesign? Default is now FALSE.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

Referenced by ignore_pikaa_natro(), and set_ignore_pikaa_natro().

◆ layer_operation_

std::map< std::string, LayerOperationType > protocols::flxbb::LayerDesignOperation::layer_operation_
private

◆ layer_residues_

LayerResidues protocols::flxbb::LayerDesignOperation::layer_residues_
private

◆ layer_specification_

std::map< std::string, LayerSpecificationType > protocols::flxbb::LayerDesignOperation::layer_specification_
private

◆ make_pymol_script_

bool protocols::flxbb::LayerDesignOperation::make_pymol_script_
private

Referenced by apply(), and make_pymol_script().

◆ repack_non_designed_residues_

bool protocols::flxbb::LayerDesignOperation::repack_non_designed_residues_
private

Referenced by apply(), and parse_tag().

◆ restrict_restypes_

bool protocols::flxbb::LayerDesignOperation::restrict_restypes_
private

Referenced by set_restrict_restypes().

◆ srbl_

core::select::util::SelectResiduesByLayerOP protocols::flxbb::LayerDesignOperation::srbl_
private

◆ SS_TYPES

utility::vector1< std::string > const protocols::flxbb::LayerDesignOperation::SS_TYPES = { "all", "Helix", "HelixCapping", "HelixStart", "Loop", "Strand" }
static

◆ task_layers_

TaskLayers protocols::flxbb::LayerDesignOperation::task_layers_
private

Referenced by add_layer(), and apply().

◆ use_original_

bool protocols::flxbb::LayerDesignOperation::use_original_
private

use original sequence for not designed layer ?

Referenced by parse_tag(), and use_original_seq().

◆ use_symmetry_

bool protocols::flxbb::LayerDesignOperation::use_symmetry_
private

Should LayerDesign work with symmetry? Default false.

If false, the asymmetric unit is extracted and used for layer setup. If true (default), the whole, symmetric pose is used for layer setup.

Referenced by set_use_symmetry(), and use_symmetry().

◆ verbose_

bool protocols::flxbb::LayerDesignOperation::verbose_
private

Referenced by apply(), and set_verbose().


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