Rosetta  2020.46
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
core::pack::hbonds::BareMinimumPDEdge Class Reference

#include <HBondGraphInitializerIG.hh>

Inheritance diagram for core::pack::hbonds::BareMinimumPDEdge:
Inheritance graph
[legend]

Public Member Functions

 BareMinimumPDEdge (interaction_graph::InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
 
 ~BareMinimumPDEdge () override
 
void add_to_two_body_energy (int const, int const, PackerEnergy const) override
 look for hbonds and clashes More...
 
void add_to_two_body_energies (ObjexxFCL::FArray2< PackerEnergy > const &res_res_energy_array) override
 look for hbonds and clashes More...
 
void set_two_body_energy (int const rot1, int const rot2, PackerEnergy const twobody) override
 identical to add_to_two_body_energies() More...
 
void clear_two_body_energy (int const, int const) override
 Does nothing in this implementation. More...
 
PackerEnergy get_two_body_energy (int const, int const ) const override
 Exits if this is called. More...
 
void declare_energies_final () override
 Does nothing in this implementation. More...
 
void prepare_for_simulated_annealing () override
 Does nothing in this implementation. More...
 
- Public Member Functions inherited from core::pack::interaction_graph::PDEdge
 PDEdge (InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
 main constructor - no default nor copy constructors provided More...
 
 ~PDEdge () override
 destructor More...
 
void set_sparse_aa_info (ObjexxFCL::FArray2_bool const &sparse_conn_info) override
 allocates two-body energy table based on amino-acid neighbor relationships and initializes the table to 0. More...
 
void force_aa_neighbors (int node1aa, int node2aa) override
 re-allocates two-body energy table after forcing a pair of amino acids to become neighbors that were not initially declared to be neighbors More...
 
void force_all_aa_neighbors () override
 re-allocates two-body energy table after forcing a pair of amino acids to become neighbors that were not initially declared to be neighbors More...
 
bool get_sparse_aa_info (int node1aa, int node2aa) const override
 returns whether two amino acid types are represented as neighbors More...
 
void add_to_two_body_energy (int const, int const, core::PackerEnergy const) override
 adds the input energy to the two body energy for state1 on the node with the smaller index and state2 on the node with the larger index so long as the amion acid types of those states have been previously declared amino acid neighbors. Any energies for non-neighboring states are ignored. More...
 
void add_to_two_body_energies (ObjexxFCL::FArray2< core::PackerEnergy > const &res_res_energy_array) override
 Adds all the energies stored in the oversized_res_res_energy array to the two body energy table for those states whose amion acid types were previoudsly declared to be amino-acid neighbors. The res-res array should have the dimension (node1->get_num_states() x node2->get_num_states());. More...
 
void set_two_body_energy (int const, int const, core::PackerEnergy const) override
 Sets the two-body energy for a pair of states. That is, it overwrites whatever two-body energy there was previously for that state pair with a new energy. Ignores non-neighboring state pairs. More...
 
void clear_two_body_energy (int const, int const) override
 Sets the two-body energy for a pair of states. That is, it overwrites whatever two-body energy there was previously for that state pair with a new energy. Ignores non-neighboring state pairs. More...
 
core::PackerEnergy get_two_body_energy (int const, int const ) const override
 returns the two body energy for a pair of states: 0 if those states are not neighbors More...
 
void declare_energies_final () override
 When all the energies that are going to be stored in an edge have been placed in it, the edge may save some memory by shrinking its AminoAcidNeighborSparseMatrix. This method instructs the edge to do so. More...
 
void prepare_for_simulated_annealing () override
 reduces the size of the pair-energy table if any amino-acid-neighbor submatrices hold nothing but 0's More...
 
core::PackerEnergy get_current_two_body_energy ()
 returns the two body energy corresponding to the current states assigned to the nodes this edge is incident upon. More...
 
void acknowledge_state_change (int node_ind, int new_state, SparseMatrixIndex const &new_state_sparse_info, core::PackerEnergy &new_energy)
 updates bookkeeping information when one of the two nodes changes its state More...
 
void acknowledge_state_zeroed (int node_ind)
 updates bookkeeping information when one of the two nodes enters its "unassigned" state. More...
 
void acknowledge_substitution (int substituted_node_index, core::PackerEnergy const curr_state_energy, int nodes_new_state, SparseMatrixIndex const &nodes_new_state_sparse_info)
 update bookkeeping information when one of the nodes an edge is incident upon changes state More...
 
ObjexxFCL::FArray2D_int const & get_offsets_for_aatypes ()
 Returns the array of offsets into the sparse two-body energy table for amino-acid neighbors. Used in transferring information from edges onto nodes for cache efficiency. More...
 
utility::vector1< int > const & get_second_node_num_states_per_aa ()
 returns an FArray of the number of states for each amino acid type for the higher-indexed node More...
 
int get_two_body_table_size () const
 returns the memory usage of the two body energy table for this edge More...
 
core::PackerEnergyget_edge_table_ptr ()
 Returns a reference to the first element in the sparse two-body energy table. Used to create a proxy array on the nodes for cache efficiency. More...
 
unsigned int count_static_memory () const override
 
unsigned int count_dynamic_memory () const override
 
ObjexxFCL::FArray2D
< core::PackerEnergy
get_aa_submatrix_energies (int node1aa, int node2aa) const
 
void set_edge_weight (Real weight) override
 
- Public Member Functions inherited from core::pack::interaction_graph::PrecomputedPairEnergiesEdge
 ~PrecomputedPairEnergiesEdge () override
 
 PrecomputedPairEnergiesEdge (InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
 
- Public Member Functions inherited from core::pack::interaction_graph::FixedBBEdge
 ~FixedBBEdge () override
 
 FixedBBEdge (InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
 
- Public Member Functions inherited from core::pack::interaction_graph::EdgeBase
virtual ~EdgeBase ()
 copy constructor, do not use More...
 
 EdgeBase (InteractionGraphBase *owner, int first_node_ind, int second_node_ind)
 main constructor for edge, no default nor copy constructors More...
 
int get_other_ind (int callers_index) const
 returns the index of the other node that the edge is incident upon More...
 
NodeBaseget_other_node (int callers_index) const
 returns a pointer to the other node that the edge is incident upon More...
 
int get_first_node_ind () const
 returns the index of the smaller-indexed node More...
 
int get_second_node_ind () const
 returns the index of the larger-indexed node More...
 
void set_pos_in_owners_list (std::list< EdgeBase * >::iterator edge_iterator)
 edge keeps iterator to its position in it's owner's edge list More...
 
void set_pos_in_node_edgevector (int callers_index, int position)
 edge keeps index it has in node_ind's edge vector More...
 
bool same_edge (int node1, int node2) const
 returns true if this edge connects nodes of index node1 and node2 the order of node1 and node2 is not important More...
 
Real edge_weight () const
 
bool marked_for_deletion () const
 Has this edge indicated that it can be deleted? More...
 
InteractionGraphBase const * get_owner () const
 
InteractionGraphBaseget_owner ()
 

Additional Inherited Members

- Static Public Member Functions inherited from core::pack::interaction_graph::PDEdge
static core::PackerEnergy get_alternate_state_energy_first_node (int first_node_alt_state, int second_node_orig_state, SparseMatrixIndex const &second_node_orig_state_sparse_info, int first_node_state_offset_minus_1, int second_node_curr_num_states_per_aatype, int aa_neighbor_offset, ObjexxFCL::FArray1< core::PackerEnergy > &edge_energy_table)
 static method that looks up the two body energy when the node with the smaller index on an edge is considering an alternate state More...
 
static core::PackerEnergy get_alternate_state_energy_second_node (int first_node_orig_state, int second_node_alt_state, SparseMatrixIndex const &first_node_orig_state_sparse_info, SparseMatrixIndex const &second_node_alternate_state_sparse_info, int second_node_alt_state_num_states_per_aatype, int aa_neighbor_offset, ObjexxFCL::FArray1< core::PackerEnergy > &edge_energy_table)
 static method that looks up the two body energy when the node with the larger index on an edge is considering an alternate state More...
 
- Protected Member Functions inherited from core::pack::interaction_graph::PDEdge
void declare_energies_final_no_deletion ()
 allow derived class to prep this class for simA, but guarantee no call to delete this; More...
 
void prepare_for_simulated_annealing_no_deletion ()
 
  • allow derived class to prep this class for simA, but guarantee no call to delete this;
More...
 
bool pd_edge_table_all_zeros () const
  More...
 
AminoAcidNeighborSparseMatrix
< core::PackerEnergy > & 
two_body_energies ()
 
- Protected Member Functions inherited from core::pack::interaction_graph::EdgeBase
void mark_edge_for_deletion ()
 Mark this edge so that it can be deleted. More...
 
int get_node_index (int index) const
 
int get_num_states_for_node (int index) const
 
NodeBase const * get_node (int index) const
 
NodeBaseget_node (int index)
 
int get_edges_position_in_nodes_edge_vector (int index) const
 
int which_node (int node_index) const
 is a node the first or second node this edge is incident upon? More...
 
void edge_weight (Real)
 protected setter of the edge weight. To be called by derived classes after they have completed the conversion from the previous edge weighting to the new edge weighting. More...
 

Constructor & Destructor Documentation

core::pack::hbonds::BareMinimumPDEdge::BareMinimumPDEdge ( interaction_graph::InteractionGraphBase owner,
int  first_node_ind,
int  second_node_ind 
)
core::pack::hbonds::BareMinimumPDEdge::~BareMinimumPDEdge ( )
overridedefault

Member Function Documentation

void core::pack::hbonds::BareMinimumPDEdge::add_to_two_body_energies ( ObjexxFCL::FArray2< PackerEnergy > const &  res_res_energy_array)
override
void core::pack::hbonds::BareMinimumPDEdge::add_to_two_body_energy ( int const  rot1,
int const  rot2,
PackerEnergy const  twobody 
)
overridevirtual
void core::pack::hbonds::BareMinimumPDEdge::clear_two_body_energy ( int  const,
int  const 
)
inlineoverridevirtual

Does nothing in this implementation.

Implements core::pack::interaction_graph::PrecomputedPairEnergiesEdge.

void core::pack::hbonds::BareMinimumPDEdge::declare_energies_final ( )
inlineoverridevirtual

Does nothing in this implementation.

Implements core::pack::interaction_graph::EdgeBase.

PackerEnergy core::pack::hbonds::BareMinimumPDEdge::get_two_body_energy ( int  const,
int  const 
) const
inlineoverridevirtual

Exits if this is called.

Implements core::pack::interaction_graph::PrecomputedPairEnergiesEdge.

void core::pack::hbonds::BareMinimumPDEdge::prepare_for_simulated_annealing ( )
inlineoverridevirtual

Does nothing in this implementation.

Implements core::pack::interaction_graph::EdgeBase.

void core::pack::hbonds::BareMinimumPDEdge::set_two_body_energy ( int const  rot1,
int const  rot2,
PackerEnergy const  twobody 
)
inlineoverridevirtual

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