Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::minimization_packing::GreenPacker Class Reference

#include <GreenPacker.hh>

Inheritance diagram for protocols::minimization_packing::GreenPacker:
Inheritance graph
[legend]

Public Types

typedef utility::graph::Graph Graph
 Types. More...
 
typedef utility::graph::GraphOP GraphOP
 
typedef
core::pack::interaction_graph::PrecomputedPairEnergiesInteractionGraph 
PrecomputedPairEnergiesInteractionGraph
 
typedef
core::pack::interaction_graph::PrecomputedPairEnergiesInteractionGraphOP 
PrecomputedPairEnergiesInteractionGraphOP
 
typedef
core::pack::rotamer_set::RotamerSets 
RotamerSets
 
typedef
core::pack::rotamer_set::RotamerSetsOP 
RotamerSetsOP
 
typedef
core::pack::task::TaskFactory 
TaskFactory
 
typedef
core::pack::task::TaskFactoryOP 
TaskFactoryOP
 
typedef
core::pack::task::PackerTaskOP 
PackerTaskOP
 
typedef core::pose::Pose Pose
 
typedef core::scoring::EnergyMap EnergyMap
 
typedef
core::scoring::ScoreFunction 
ScoreFunction
 
typedef
core::scoring::ScoreFunctionOP 
ScoreFunctionOP
 
typedef core::scoring::ScoreTypes ScoreTypes
 
typedef
core::scoring::methods::LongRangeTwoBodyEnergy 
LongRangeTwoBodyEnergy
 
typedef core::Size Size
 
typedef core::Real Real
 
typedef core::Vector Vector
 
- Public Types inherited from protocols::moves::Mover
typedef utility::tag::TagCOP TagCOP
 
typedef core::pose::Pose Pose
 
typedef core::pose::PoseCOP PoseCOP
 
typedef std::list< std::string > Strings
 

Public Member Functions

 GreenPacker ()
 Green Packer. More...
 
 ~GreenPacker () override
 
void apply (Pose &) override
 Main Method. More...
 
std::string get_name () const override
 Each derived class must specify its name. The class name. More...
 
void set_scorefunction (ScoreFunction const &)
 
void set_group_discriminator (protocols::minimization_packing::GroupDiscriminatorOP)
 
void set_task_factory (TaskFactoryOP)
 
void set_reference_round_task_factory (TaskFactoryOP)
 
- Public Member Functions inherited from protocols::moves::Mover
 Mover ()
 
virtual MoverOP create ()
 
MoverCOP get_self_ptr () const
 
MoverOP get_self_ptr ()
 
MoverCAP get_self_weak_ptr () const
 
MoverAP get_self_weak_ptr ()
 
 Mover (std::string const &type_name)
 sets the type for a mover; name_ has been removed (2010/05/14) More...
 
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...
 
virtual MoverOP clone () const
 Return a clone of the Mover object. 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...
 
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...
 
void set_type (std::string const &setting)
 Set the 'type' string. More...
 
std::string get_type () const
 
void type (const std::string &type_in)
 Set the 'type' string. More...
 
std::string const & type () const
 Get the set 'type' string. More...
 
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 parse_my_tag (TagCOP tag, basic::datacache::DataMap &data)
 Called by MoverFactory when constructing new Movers. Takes care of the specific mover's parsing. More...
 
void set_current_job (protocols::jobdist::BasicJobCOP job)
 
jobdist::BasicJobCOP get_current_job () const
 
virtual void set_current_tag (std::string const &new_tag)
 
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...
 
virtual void show (std::ostream &output=std::cout) const
 Outputs details about the Mover, including current settings. More...
 
virtual core::Real last_proposal_density_ratio ()
 
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 mover_provides_citation_info () const
 Does this mover provide information about how to cite it? More...
 
virtual utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const
 Provide the citation. More...
 
virtual bool mover_is_unpublished () const
 Does this mover indicate that it is unpublished (and, by extension, that the author should be included in publications resulting from it)? More...
 
virtual utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const
 Provide a list of authors and their e-mail addresses, as strings. More...
 

Private Member Functions

void set_weights_for_sfxn (ScoreFunction &sfxn, ScoreTypes const &scoretypes, EnergyMap const &weights) const
 Private methods. More...
 
void setup_reference_data (Pose &pose)
 
void repack (Pose &pose)
 
void split_pose_into_groups (Pose &pose)
 
void create_reference_packer_task (Pose &pose)
 
void create_reference_packer_neighbor_graph (Pose &pose)
 
void create_reference_rotamers (Pose &pose)
 
void compute_reference_intragroup_rpes (Pose &pose, core::Size const threads_to_request)
 
void create_fresh_task (Pose &pose)
 
void create_fresh_packer_neighbor_graph (Pose &pose)
 
void create_fresh_rotamers (Pose &pose)
 
void find_reference_and_current_rotamer_correspondence (Pose &pose)
 
void initialize_internal_correspondence_data (Pose &pose)
 
void compute_energies (Pose &pose, core::Size const threads_to_request)
 
void run_sa (Pose &pose)
 
void cleanup (core::pose::Pose &pose)
 
void add_precomputed_energies (Pose &pose, PrecomputedPairEnergiesInteractionGraphOP pig)
 
void compute_absent_energies (Pose &pose, PrecomputedPairEnergiesInteractionGraphOP pig)
 
void compute_absent_srci_energies_for_residue_pair (Pose &pose, PrecomputedPairEnergiesInteractionGraphOP pig, core::Size lower_res, core::Size upper_res)
 
void compute_absent_lrci_energies_for_residue_pair (Pose &pose, LongRangeTwoBodyEnergy const &lre, PrecomputedPairEnergiesInteractionGraphOP pig, core::Size lower_res, core::Size upper_res)
 
void drop_inter_group_edges (Pose &pose, GraphOP packer_neighbor_graph) const
 
void drop_intra_group_edges (Pose &pose, GraphOP packer_neighbor_graph) const
 
void store_reference_pose_geometry (Pose &pose)
 
void compare_input_pose_geometry_to_reference (Pose &pose)
 

Private Attributes

ScoreFunctionOP full_sfxn_
 
ScoreFunctionOP ci_sfxn_
 
ScoreFunctionOP cd_sfxn_
 
bool create_reference_data_
 
protocols::minimization_packing::GroupDiscriminatorOP group_discriminator_
 
utility::vector1< core::Sizegroup_ids_
 
std::vector< utility::vector1
< core::Size > > 
group_members_
 
TaskFactoryOP reference_task_factory_
 
TaskFactoryOP task_factory_
 
PackerTaskOP reference_task_
 Data captured from the reference apply() More...
 
GraphOP reference_packer_neighbor_graph_
 
RotamerSetsOP reference_rotamer_sets_
 rotamer sets created by the reference task More...
 
utility::vector1< core::Sizereference_resid_2_moltenres_
 
utility::vector1< core::Sizereference_moltenres_2_resid_
 
PrecomputedPairEnergiesInteractionGraphOP ci_rpes_
 the stored intra-group RPEs from the context independent components of the score function More...
 
utility::vector1
< utility::vector1
< protocols::minimization_packing::MinimalRotamerOP > > 
original_rotamers_
 the internal geometry of the rotamers created in the first round More...
 
utility::vector1
< utility::vector1< Real > > 
orig_bb_tors_
 the internal geometry of the backbone used in the first round More...
 
utility::vector1< Vectororiginal_bb_rep_coords_
 for debugging; a set of coordinates of each residue for backbone atom #1 (N in proteins, Phos for NA's) so that if the backbone DOFs do change, and the structure of the input pose cannot be superimposed back onto the original coordinates, then a debug runtime_assert statementmet will get caught. More...
 
PackerTaskOP current_task_
 Data for the "current" packing – valid between the beginning and end of a call to "apply". More...
 
RotamerSetsOP current_rotamer_sets_
 
PrecomputedPairEnergiesInteractionGraphOP current_ig_
 
utility::vector1
< utility::vector1
< protocols::minimization_packing::MinimalRotamerOP > > 
current_rotamers_
 the internal geometry of the rotamers created in the first round More...
 
GraphOP current_packer_neighbor_graph_
 
GraphOP current_inter_group_packer_neighbor_graph_
 
GraphOP current_intra_group_packer_neighbor_graph_
 
utility::vector1
< utility::vector1< core::Size > > 
orig_rot_2_curr_rot_
 correspondence between current rotamer set and original rotamer set. More...
 
utility::vector1
< utility::vector1< core::Size > > 
curr_rot_2_orig_rot_
 
utility::vector1
< utility::vector1< core::Size > > 
curr_rotamers_with_correspondence_
 
utility::vector1
< utility::vector1< core::Size > > 
curr_rotamers_without_correspondence_
 

Additional Inherited Members

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

Member Typedef Documentation

Types.

Constructor & Destructor Documentation

protocols::minimization_packing::GreenPacker::GreenPacker ( )

Green Packer.

protocols::minimization_packing::GreenPacker::~GreenPacker ( )
overridedefault

Member Function Documentation

void protocols::minimization_packing::GreenPacker::add_precomputed_energies ( Pose pose,
PrecomputedPairEnergiesInteractionGraphOP  pig 
)
private
void protocols::minimization_packing::GreenPacker::apply ( Pose )
overridevirtual
void protocols::minimization_packing::GreenPacker::cleanup ( core::pose::Pose pose)
private
void protocols::minimization_packing::GreenPacker::compare_input_pose_geometry_to_reference ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::compute_absent_energies ( Pose pose,
PrecomputedPairEnergiesInteractionGraphOP  pig 
)
private

this time, iterate across edges in the packer neighbor graph and compute pair interaction energies between rotamers that do not correspond to any of the original rotamers with all other rotamers in the neighboring set. This has to be careful not to double-count interactions between rotamer pairs that both lack a correspondence.

References ci_sfxn_, compute_absent_lrci_energies_for_residue_pair(), compute_absent_srci_energies_for_residue_pair(), curr_rotamers_without_correspondence_, current_intra_group_packer_neighbor_graph_, current_rotamer_sets_, core::pose::Pose::energies(), core::scoring::Energies::long_range_container(), and core::pose::Pose::size().

Referenced by compute_energies().

void protocols::minimization_packing::GreenPacker::compute_absent_lrci_energies_for_residue_pair ( Pose pose,
LongRangeTwoBodyEnergy const &  lre,
PrecomputedPairEnergiesInteractionGraphOP  pig,
core::Size  lower_res,
core::Size  upper_res 
)
private
void protocols::minimization_packing::GreenPacker::compute_absent_srci_energies_for_residue_pair ( Pose pose,
PrecomputedPairEnergiesInteractionGraphOP  pig,
core::Size  lower_res,
core::Size  upper_res 
)
private
void protocols::minimization_packing::GreenPacker::compute_energies ( Pose pose,
core::Size const  threads_to_request 
)
private
void protocols::minimization_packing::GreenPacker::compute_reference_intragroup_rpes ( Pose pose,
core::Size const  threads_to_request 
)
private
void protocols::minimization_packing::GreenPacker::create_fresh_packer_neighbor_graph ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::create_fresh_rotamers ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::create_fresh_task ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::create_reference_packer_neighbor_graph ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::create_reference_packer_task ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::create_reference_rotamers ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::drop_inter_group_edges ( Pose pose,
GraphOP  packer_neighbor_graph 
) const
private

All edges to group 0 are considered inter-group edges.

References group_ids_, and core::pose::Pose::size().

Referenced by create_fresh_packer_neighbor_graph(), and create_reference_packer_neighbor_graph().

void protocols::minimization_packing::GreenPacker::drop_intra_group_edges ( Pose pose,
GraphOP  packer_neighbor_graph 
) const
private

All edges to group 0 are considered inter-group edges.

References group_ids_, and core::pose::Pose::size().

Referenced by create_fresh_packer_neighbor_graph().

void protocols::minimization_packing::GreenPacker::find_reference_and_current_rotamer_correspondence ( Pose pose)
private
std::string protocols::minimization_packing::GreenPacker::get_name ( ) const
overridevirtual

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

Implements protocols::moves::Mover.

void protocols::minimization_packing::GreenPacker::initialize_internal_correspondence_data ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::repack ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::run_sa ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::set_group_discriminator ( protocols::minimization_packing::GroupDiscriminatorOP  discriminator)

References group_discriminator_.

void protocols::minimization_packing::GreenPacker::set_reference_round_task_factory ( TaskFactoryOP  factory)

Pointer copy, atm, since there's no good way to clone task factories and all of their contents.

References reference_task_factory_.

void protocols::minimization_packing::GreenPacker::set_scorefunction ( ScoreFunction const &  sfxn)
void protocols::minimization_packing::GreenPacker::set_task_factory ( TaskFactoryOP  factory)

Pointer copy, atm, since there's no good way to clone task factories and all of their contents.

References task_factory_.

void protocols::minimization_packing::GreenPacker::set_weights_for_sfxn ( ScoreFunction sfxn,
ScoreTypes const &  scoretypes,
EnergyMap const &  weights 
) const
private

Private methods.

References core::scoring::ScoreFunction::set_weight().

Referenced by set_scorefunction().

void protocols::minimization_packing::GreenPacker::setup_reference_data ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::split_pose_into_groups ( Pose pose)
private
void protocols::minimization_packing::GreenPacker::store_reference_pose_geometry ( Pose pose)
private

Member Data Documentation

ScoreFunctionOP protocols::minimization_packing::GreenPacker::cd_sfxn_
private
PrecomputedPairEnergiesInteractionGraphOP protocols::minimization_packing::GreenPacker::ci_rpes_
private

the stored intra-group RPEs from the context independent components of the score function

Referenced by add_precomputed_energies(), and compute_reference_intragroup_rpes().

ScoreFunctionOP protocols::minimization_packing::GreenPacker::ci_sfxn_
private
bool protocols::minimization_packing::GreenPacker::create_reference_data_
private
utility::vector1< utility::vector1< core::Size > > protocols::minimization_packing::GreenPacker::curr_rot_2_orig_rot_
private
utility::vector1< utility::vector1< core::Size > > protocols::minimization_packing::GreenPacker::curr_rotamers_with_correspondence_
private
utility::vector1< utility::vector1< core::Size > > protocols::minimization_packing::GreenPacker::curr_rotamers_without_correspondence_
private
PrecomputedPairEnergiesInteractionGraphOP protocols::minimization_packing::GreenPacker::current_ig_
private

Referenced by cleanup(), compute_energies(), and run_sa().

GraphOP protocols::minimization_packing::GreenPacker::current_inter_group_packer_neighbor_graph_
private
GraphOP protocols::minimization_packing::GreenPacker::current_intra_group_packer_neighbor_graph_
private
GraphOP protocols::minimization_packing::GreenPacker::current_packer_neighbor_graph_
private
RotamerSetsOP protocols::minimization_packing::GreenPacker::current_rotamer_sets_
private
utility::vector1< utility::vector1< protocols::minimization_packing::MinimalRotamerOP > > protocols::minimization_packing::GreenPacker::current_rotamers_
private

the internal geometry of the rotamers created in the first round

Referenced by cleanup(), create_fresh_rotamers(), and find_reference_and_current_rotamer_correspondence().

PackerTaskOP protocols::minimization_packing::GreenPacker::current_task_
private

Data for the "current" packing – valid between the beginning and end of a call to "apply".

Referenced by cleanup(), compute_energies(), create_fresh_packer_neighbor_graph(), create_fresh_rotamers(), create_fresh_task(), repack(), and run_sa().

ScoreFunctionOP protocols::minimization_packing::GreenPacker::full_sfxn_
private
protocols::minimization_packing::GroupDiscriminatorOP protocols::minimization_packing::GreenPacker::group_discriminator_
private
utility::vector1< core::Size > protocols::minimization_packing::GreenPacker::group_ids_
private
std::vector< utility::vector1< core::Size > > protocols::minimization_packing::GreenPacker::group_members_
private

Referenced by split_pose_into_groups().

utility::vector1< utility::vector1< Real > > protocols::minimization_packing::GreenPacker::orig_bb_tors_
private

the internal geometry of the backbone used in the first round

Referenced by compare_input_pose_geometry_to_reference(), and store_reference_pose_geometry().

utility::vector1< utility::vector1< core::Size > > protocols::minimization_packing::GreenPacker::orig_rot_2_curr_rot_
private

correspondence between current rotamer set and original rotamer set.

Referenced by cleanup(), find_reference_and_current_rotamer_correspondence(), and initialize_internal_correspondence_data().

utility::vector1< Vector > protocols::minimization_packing::GreenPacker::original_bb_rep_coords_
private

for debugging; a set of coordinates of each residue for backbone atom #1 (N in proteins, Phos for NA's) so that if the backbone DOFs do change, and the structure of the input pose cannot be superimposed back onto the original coordinates, then a debug runtime_assert statementmet will get caught.

Referenced by store_reference_pose_geometry().

utility::vector1< utility::vector1< protocols::minimization_packing::MinimalRotamerOP > > protocols::minimization_packing::GreenPacker::original_rotamers_
private

the internal geometry of the rotamers created in the first round

Referenced by create_reference_rotamers(), find_reference_and_current_rotamer_correspondence(), and initialize_internal_correspondence_data().

utility::vector1< core::Size > protocols::minimization_packing::GreenPacker::reference_moltenres_2_resid_
private
GraphOP protocols::minimization_packing::GreenPacker::reference_packer_neighbor_graph_
private
utility::vector1< core::Size > protocols::minimization_packing::GreenPacker::reference_resid_2_moltenres_
private
RotamerSetsOP protocols::minimization_packing::GreenPacker::reference_rotamer_sets_
private

rotamer sets created by the reference task

Referenced by compute_reference_intragroup_rpes(), and create_reference_rotamers().

PackerTaskOP protocols::minimization_packing::GreenPacker::reference_task_
private

Data captured from the reference apply()

task used in construction of the reference data

Referenced by compute_reference_intragroup_rpes(), create_reference_packer_neighbor_graph(), create_reference_packer_task(), create_reference_rotamers(), and setup_reference_data().

TaskFactoryOP protocols::minimization_packing::GreenPacker::reference_task_factory_
private
TaskFactoryOP protocols::minimization_packing::GreenPacker::task_factory_
private

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